DQL
即Data Query Language, 数据查询语言
排序查询
语法:order by 排序字段1 排序方式1,排序字段2 排序方式2....
排序方式:ASC: 升序(默认),DESC:降序
示例:
select name,math,english from student order by math;(按数学成绩升序)
select name,math,english from student order by math desc, english asc;(按数学成绩降序,英语成绩升序)
- 注意:有多个排序条件时,当前边的条件值一样时,才会判断第二条件
聚合函数
count:计算个数
示例:
select count(name) from student;
select count(ifnull(english,0)) from student;
max:计算最大值
示例:select max(english) from student;
min:计算最小值
示例:select min(english) from student;
sum:计算和
示例:select sum(english) from student;
avg:计算平均值
示例:select avg(ifnull(english,0)) from student;
注意:聚合函数的计算会排除null值
分组查询
语法:group by 分组字段;
示例:
select sex,avg(math),count(id) from student group by sex;
select sex,avg(math),count(id) from student where math > 60 group by sex having count(id) > 3;
注意:
- where 在分组之前进行限定,如果不满足条件,则不参与分组。
- having 在分组之后进行限定,如果不满足结果,则不会被查询出来。
- where 后不可以跟聚合函数,having 可以进行聚合函数的判断。
分页查询
语法:limit 开始的索引, 每页显示的条数;
公式:开始的索引 = (当前的页码 - 1)* 每页显示的条数
示例:select * from student limit 0,3;