查询的补充
DQL:查询语句
1.排序查询:
*语法:order by 子句
*order by 排序字段1 排序方式1 ,排序字段2 排序方式2
*排序方式:
*ASC:升序(默认)
*DESC:降序
*注意
如果有多个排序条件,则当前边值一样时,才会按后边的排。
2.聚合函数:将一列数据作为一个整体,进行纵向的计算。
1.count:计算个数:select count(列名)from 表名
2.max:计算最大值:select max(列名)from 表名
3.min:计算最小值:select min(列名)from 表名
4.sum:计算和:select sum(列名)from 表名
5.avg:计算平均值:select avg(列名)from 表名
*注意:聚合函数的计算会排除null值。
解决方法:
1.选择不包含空的列进行计算
2.IFNULL函数 *select count(ifnull(列名,0))from 表名
3.分组查询:
1.语法:group by 分组字段;
2.注意:
1.分组之后查询的字段:分组字段,聚合函数
2.where和having 的区别:
*where在分组之前限定,如果不满足条件,则不会参与分组,having在分组之后限定,不满足不会被查询出来。
*where后不可以跟聚合函数,having可以进行聚合函数的判断。
4.分页查询:
1.语法:limit 开始的索引,每页查询的条数
2.公式:开始的索引=(当前的页码-1)*每页显示的条数
3.,样例:select * from student limit 0,3; --第一页
select * from student limit 3,3; --第二页
4.limit是MySQL的方言