1.GROUP BY
先说概念:GROUP BY子句将查询结果按照某一列或者多列的值分组,值相等的为一组。分组的目的是细化聚集函数的作用对象。
以下列表Employees为例,查询男性女性的各自人数并按性别分组:
select Sex, count(EmployeeID) as Num from Employees
group by Sex;
查询结果如下:
2.HAVING
概念:若分组后还要求按照一定条件对分组进行筛选最终输出满足指定条件的组,则可以使用HAVING指定条件。
以Employees为例,查询各部门人数并按部门人数大于2进行筛选:
select DepartmentID, count(EmployeeID) as Num from Employees
group by DepartmentID
having count(EmployeeID)>2;
查询结果如下:
附:表Employees