温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java的DQL查询语句介绍

发布时间:2020-06-09 17:39:56 来源:亿速云 阅读:258 作者:元一 栏目:编程语言

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"方言"

 


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI