聚合函数
注意:null值不参与聚合函数的计算。
分组查询
2.where与having的区别
- 执行时机不同:where是在分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。
- 判断条件不同:where不能对聚合函数进行判断,而having可以。
注意:
- 执行顺序:where>聚合函数>having。
- 分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段毫无意义,即select后面的字段,一般只有需要分组和参与聚合运算的字段。
排序查询
分页查询
!
注意:
- 起始索引从0开始,起始索引 = (查询页码-1) x 每页显示记录数。
- 分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT
- 如果查询的是第一页数据,起始索引可以省略,直接简单为limit 20。
分页查询的语法
DCL-管理数据库 用户、控制数据库的访问权限
DCL管理用户
注意:
- 主机名可以使用%通配符。
- 这类SQL开发人员操作的比较少,主要是DBA(Database Administrator 数据库管理人员)使用。
DCL权限控制
函数
字符串函数
数值函数
求模即是取余
lpad是左前充,6是位数,0是要补偿的内容。
日期函数
流程控制函数
在使用case when then else end 时可以有多个when then