排序查询
SELECT * from stu ORDER BY age ASC;-- 升序排列
SELECT * from stu ORDER BY age;-- 不写排序方式,则默认asc升序排列
SELECT * from stu ORDER BY math DESC;-- 降序排列
SELECT * FROM stu order by math desc,english DESC;
-- 当前边的条件值一样时,才会根据第二条件进行排序,否则第二条件无作用
分组查询
聚合函数
-count() 统计数量,一般选不为null的列
-max() 最大值
-min() 最小值
-sum() 求和
-avg() 平均值
#统计函数里面选的字段名有要求:
一般选取主键--非空且唯一
或者输入*
SELECT COUNT(id) FROM stu;
SELECT COUNT(*) FROM stu;
SELECT MAX(math) from stu;
SELECT MIN(math) from stu;
SELECT sum(math) from stu;
SELECT avg(math) from stu;
注意:null值不参与所有聚合函数的运算
SELECT 字段列表 FROM 表名 GROUP BY 分组字段名;
-- 分组后,查询的字段为聚合函数或分组字段,查询其他字段无意义
SELECT sex,COUNT(*), AVG(math) FROM stu where math>70 GROUP BY sex;
-- where可限制条件,分组前条件限定
SELECT sex,COUNT(*), AVG(math) FROM stu where math>70 GROUP BY sex HAVING count(*)>1;
-- having分组后的筛选
分页查询
#每页显示三条数据据
SELECT * from stu LIMIT 0,3;-- 第一页
SELECT * from stu LIMIT 3,3;第二页
SELECT * from stu LIMIT 6,3;第三页
-- 查询条目数一般都是不变的,这里恒定为3
-- 起始索引=(当前页码-1)*每页显示的条数