189 8069 5689

java的DQL查询语句介绍

Java

从网站建设到定制行业解决方案,为提供网站设计制作、成都网站设计服务体系,各种行业企业客户提供网站建设解决方案,助力业务快速发展。创新互联将不断加快创新步伐,提供优质的建站服务。

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

DQL查询语句

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查询语句介绍
标题路径:http://cdxtjz.cn/article/jjoiep.html

其他资讯