原创 Java基础语法学习DQL查询语句

发布时间:2020-01-08 10:43:28 浏览 1085 来源:博学谷 作者:照照

    DQL查询语句只是一种显示数据的方式,因此不会对数据库中的数据进行修改。简单来讲,DQL查询语句有以下四种查询方法,分别是排序查询、聚合函数、分组查询和分页查询。今天要学习的Java基础语法就是关于DQL查询语句的四种查询方式介绍,需要学习了解这方面知识点的小伙伴,一起来看看相关知识点的梳理吧!

     

    DQL查询语句


      1. 排序查询
      

    (1)语法:order by 子句
      

    order by 排序字段1 排序方式1 , 排序字段2 排序方式2...
      

    (2)排序方式:
      

    ASC:升序,默认的。
      

    DESC:降序。
      

    注意:如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。
      

    2、 聚合函数:将一列数据作为一个整体,进行纵向的计算。
      

    (1)count:计算个数。一般选择非空的列:主键;count(*)。
      

    (2)max:计算最大值
      

    (3)min:计算最小值
      

    (4)sum:计算和
      

    (5)avg:计算平均值
      

    注意:聚合函数的计算,排除null值。
      

    解决方案:选择不包含非空的列进行计算;IFNULL函数。
      

    3、分组查询:
      

    (1)语法:group by 分组字段;
      

    (2)注意:分组之后查询的字段:分组字段、聚合函数。
      

    (3)where 和 having 的区别?
      

    where 在分组之前进行限定,如果不满足条件,则不参与分组。having在分组之后进行限定,如果不满足结果,则不会被查询出来;where 后不可以跟聚合函数,having可以进行聚合函数的判断。
      

    -- 按照性别分组。分别查询男、女同学的平均分
      

    SELECT sex , AVG(math) FROM student GROUP BY sex;
      

    -- 按照性别分组。分别查询男、女同学的平均分,人数
      

    SELECT sex , AVG(math),COUNT(id) FROM student GROUP BY sex;
     

    -- 按照性别分组。分别查询男、女同学的平均分,人数 要求:分数低于70分的人,不参与分组
      

    SELECT sex , AVG(math),COUNT(id) FROM student WHERE math > 70 GROUP BY sex;
      

    -- 按照性别分组。分别查询男、女同学的平均分,人数 要求:分数低于70分的人,不参与分组,分组之后。人数要大于2个人
      

    SELECT sex , AVG(math),COUNT(id) FROM student WHERE math > 70 GROUP BY sex HAVING COUNT(id) > 2;
      

    SELECT sex , AVG(math),COUNT(id) 人数 FROM student WHERE math > 70 GROUP BY sex HAVING 人数 > 2;

     

    4、分页查询

     

    (1)语法:limit 开始的索引,每页查询的条数;
      

    (2)公式:开始的索引 = (当前的页码 - 1) * 每页显示的条数
      

    -- 每页显示3条记录
      

    SELECT * FROM student LIMIT 0,3; -- 第1页
      

    SELECT * FROM student LIMIT 3,3; -- 第2页
      

    SELECT * FROM student LIMIT 6,3; -- 第3页
      

    (3)limit 是一个MySQL"方言"

     

    以上就是关于Java基础语法学习中DQL查询语句的全部知识点梳理,大家都记住了吗?如果觉得本文的学习难度家较大,大家也可以试听一下博学谷JavaEE在线就业班的课程,相信可以更加轻松掌握Java基础语法的内容,还能进一步深入学习,掌握Java企业级的开发能力。

    申请免费试学名额    

在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!

上一篇: Zookeeper入门学什么? 下一篇: Java入门怎么学?学习Jave需要做些什么?

相关推荐 更多

    推荐课程

  • Apache ServiceComb原理解析精讲

    ¥99 提高 118

  • Docker入门教程

    免费 进阶 2005

  • 企业年会之红包雨场景实战

    ¥299 进阶 1781

  • 精选大学生毕设项目 10小时带你学会搭建在线购物网站

    免费 基础 1042

  • Java并发编程原理精讲

    ¥199 进阶 193

热门文章

  • 5W2H数据分析方法及思维是什么?
  • UI设计师要懂什么技术?掌握哪些知识?
  • 哪里可以培训少儿编程老师?学什么?
  • 软件测试方法和技术知识点有哪些?
  • 2021年2月IT编程语言排行榜
  • PHP从入门到精通需要多长时间?
  • 产品经理需要的技能是什么?具备哪些能力?
  • 新媒体运营是做什么的?工作内容有哪些?
  • Java线上培训机构哪家好?靠不靠谱?
  • 学Web技术前端培训机构哪家好?
  • 查看更多

扫描二维码,了解更多信息

博学谷二维码