查询排序:
|
-- 2.10 查询排序(order by) -- 语法 :order by 字段 asc/desc -- asc: 顺序,正序。数值:递增,字母:自然顺序(a-z) -- desc: 倒序,反序。数值:递减,字母:自然反序(z-a)
-- 默认情况下,按照插入记录顺序排序 SELECT * FROM student;
-- 需求: 按照id顺序排序 SELECT * FROM student ORDER BY id ASC; SELECT * FROM student ORDER BY id; -- 默认正序
SELECT * FROM student ORDER BY id DESC;-- 反序
-- 注意:多个排序条件 -- 需求: 按照servlet正序,按照jsp的倒序 SELECT * FROM student ORDER BY servlet ASC,jsp DESC; |
-- 成绩表按js成绩正序排列
SELECT * FROM score ORDER BY js ASC;
-- 成绩表按css成绩倒序排列
SELECT * FROM score ORDER BY css DESC;
分组查询:
|
-- 2.11 分组查询(group by) -- 需求: 查询男女的人数 -- 预期结果: -- 男 3 --- 女 2 -- 1) 把学生按照性别分组(GROUP BY gender) -- 2) 统计每组的人数(COUNT(*)) SELECT gender,COUNT(*) FROM student GROUP BY gender; |
-- 查询每个性别人数
SELECT ssex FROM student GROUP BY ssex
SELECT ssex,COUNT(*) FROM student GROUP BY ssex
-- 查询每个性别学生的总零花钱
SELECT ssex,SUM(money) FROM student grounp BY ssex
分组查询后筛选:
|
-- 2.12 分组查询后筛选 -- 需求: 查询总人数大于2的性别 -- 1) 查询男女的人数 -- 2)筛选出人数大于2的记录(having) --- 注意: 分组之前条件使用where关键字,分组之后条件使用having关键字 SELECT gender,COUNT(*) FROM student GROUP BY gender HAVING COUNT(*)>2; |
-- 查询人数大于2的性别
SELECT ssex FROM student GROUP BY ssex HAVING COUNT(*)>2
-- 查询总零花钱大于1000的性别
SELECT ssex,SUM(money) FROM student GROUP BY ssex HAVING SUM(money)>1000

浙公网安备 33010602011771号