在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
DQL查询语句只是一种显示数据的方式,因此不会对数据库中的数据进行修改。简单来讲,DQL查询语句有以下四种查询方法,分别是排序查询、聚合函数、分组查询和分页查询。今天要学习的Java基础语法就是关于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企业级的开发能力。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Dubbox和Dubbo哪个好?为什么?
Dubbox和Dubbo哪个好?其实Dubbox和Dubbo都是很好的服务框架,简单来说,Dubbox和Dubbo本质上没有区别,Dubbox是Dubbo的升级版本。这样说来,好像Dubbox更好一些,为什么?毕竟它是升级的版本,扩展了Dubbo没有的内容。现在,我们来详细分析一下它们两者的区别吧!
15103
2019-08-06 10:12:07
什么是微服务?微服务优缺点分析
微服务是近些年流行起来的热门概念,与传统的的IT架构相比,它有许多的优势。那么到底什么是微服务呢?本文将对微服务优缺点进行分析,让大家全面的了解微服务。
10042
2019-08-13 09:59:51
Java编程语言基础知识进阶学习路线及目标
Java编程语言基础知识进阶学习内容及学习目标,此阶段学习具备JavaSE基本开发技巧,可胜任简单单机应用程序。对企业JavaWeb开发深入了解,为JavaWeb学习提供基础。Java编程语言基础主要学习Git工具、面向对象、常用API、、异常、集合、IO、多线程、网络编程、Lambda、反射等知识。
7290
2020-04-16 16:04:12
Java案例基础练习汇总附答案
在完成了Java基础语法的学习之后,要想更好的巩固相应的知识点,最好的办法就是多做一些Java案例的基础练习。本文为Java基础语法的学习者整理汇总了一些基础练习项目,比如减肥计划if版本、减肥计划switch版本、逢七跳过、不死神兔和百钱白鸡等练习题目,还附上了代码实现的具体答案,下面一起来做做吧~
7809
2020-05-25 09:40:19
Redis数据库执行命令速度快的原因是什么?
Redis数据库执行命令速度快的原因是什么?作为服务端工程师工作中Redis用到的比较多。很多人知道Redis 快仅仅因为它是基于内存实现的,对于其它原因倒是模棱两可。
8063
2021-05-11 11:07:52
