1、分组查询
(1)基础语法:
select 字段列表 from 表名 [where 条件] group by 分组字段名 [having 分组之后的过滤条件]
(2)注意事项:
(3)理解:
select后的“字段列表”是由from后的参数决定的,where的执行时间在分组操作之前,having的执行时间在分组操作之后。
执行时间:where>分组操作>having
2、实际操作:
(1)根据性别分组,并统计男女员工的数量
# 1、根据性别分组,并统计男员工数量,以及女员工数量
select count(*) from things group by type;
select type,count(*) from things group by type;
(2)根据性别分组,并统计男性员工和女性员工的平均年龄
# 2、根据性别分组,并统计男性员工和女性员工的平均年龄
select type,avg(age) from things group by type;
(3)查询年龄大于等于20岁的员工,再根据性别分组,最后得到员工数量大于3的性别
# 3、查询年龄大于等于20岁的员工,再根据性别分组,最后得到员工数量大于3的性别
select type,count(*) from things where age>=20 group by type having count(*)>=3;