数据库DQL表记录的查询
1、排序查询
A.基础语法: ORDER BY 列名称 排序规则
B.排序规则: ASC 升序(从小到大) 默认的 DESC 降序
C.案例:
-- 按照数学成绩升序排列 SELECT * FROM 学生表 ORDER BY 数学成绩 ASC ;
-- 先按照数学成绩升序排,数学成绩相同就按英语成绩降序 SELECT * FROM 学生表 ORDER BY 数学成绩 ASC , 英语成绩 DESC;
2、聚合函数
A.常用的聚合函数
a. COUNT(列名) -- 求个数
b. MAX(列名) -- 求最大值
c. MIN(列名) -- 求最小值
d. SUM(列名) -- 求和
e. AVG(列名) -- 求平均值
B.注意事项 聚合函数排除为NULL值的列.解决方案:
a.不采用 为NULL的列
b.函数 IFNULL(列名,0)
3、分组查询 GROUP BY
A.基础格式 GROUP BY 分组的字段
B.注意事项
a.分组之后,查询的结果是 分组的字段 或者是 聚合函数
b.两个区别 WHERE 和 HAVING
WHERE 分组之前的条件筛选,不满足条件,不参与分组. 后面不能跟聚合函数 HAVING 分组之后的条件筛选,不满足条件,不会显示出来. 后面直接跟聚合函数
C.案例
-- 根据性别进行分组,查询学生表当中的性别和对应的人数 SELECT 性 别,COUNT(主键id) FROM 学生表 GROUP BY 性别;
-- 从学生表当中查询成绩大于80,对性别分组要求人数大于2,显示最后的结果 SELECT COUNT(主键id) FROM 学生表 WHERE 成绩>80 GROUP BY 性别 HAVING COUNT(主键ID)>2;
4、分页查询 LIMIT
A.基础格式
LIMIT 起始位置,每页条数
B.计算公式
起始位置 = (当前页数-1)*每页条数
C.案例: 每页条数显示4条,在第6页的写法
SELECT * FROM 表名称 LIMIT 20,4; -- (6-1)*4 =20