语法

  1. SELECT 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件];

where 和 having 区别:
image.png

示例

--1. 根据性别分组,统计男性员工 和 女性员工的数量
select gender, count(*) from emp group by gender;

--2. 根据性别分组,统计男性员工 和 女性员工的平均年龄
select gender, avg(age) from emp group by gender;

--3. 查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于3的工作地址
select workaddress, count(*) address_count from emp 
where age < 45 group by workaddress having address_count >= 3;

image.png