* 语法:order by 子句
* order by 排序字段1 排序方式1,排序字段2 排序方式2...
* 排序方式
ASC:升序排列,默认的排序方式
DESC:降序
select * from stu order by age DESC -- 排序方式;
order by 后面跟要排序的那一列。
如果有多个条件,只有当前面条件的值一样时才会比较第二个条件。
2.聚合函数
* 概念:将一列数据作为一个整体,进行纵向的计算。
语句中括号里的都是想要查询的列的名称
1. count:计算个数
select count(name) from stu;
2. max:计算最大值
select max(age) from stu;
3. min:计算最小值
4. sum:计算和值
select sum(age) from stu;
5. avg:平均数
select avg(age) from stu;
* 注意:聚合函数的计算,不包含null
**解决方案:选择不为空的**
3.分组查询
1. group by 列名;
select sex,avg(age),count(id) from stu group by sex;
2.分组之前对条件进行限制
//年纪小于20的不参与查询
select sex,avg(age),count(id) from stu where age > 20 group by sex;
//对分组之后的条件限制
获取分组之后年纪大于20的男女人数大于1的
select sex,avg(age),count(id) from stu where age > 20 group by sex having count(id) >1;
**where和having的区别**
1.where在分组之前进行限定,如果不满足这个条件则不参与分组,having是在分组之后进行限定,如果不满足结果,则不会被查询出来
2.where后不能跟聚合函数,having可以
4.分页查询
1.语法:limit开始的索引,每页查询的数目
//查询stu表中的前两条数据信息
select * from stu limit 0,2;
2.公式:开始的索引=(当前页码 -1) * 每页显示条数,条数
DQL:查询语句1.排序查询* 语法:order by 子句 * order by 排序字段1 排序方式1,排序字段2 排序方式2... * 排序方式 ASC:升序排列,默认的排序方式 DESC:降序 select * from stu order by age DESC -- 排序方式; order by 后面跟要排序的那一列。 如果有多个条件,只有当前面条件的值一样时才会比较第二个条件。2.聚合函数* 概念:将一列数据作为