数据库 查询中,分组是一个非常重要的应用。分组是指将数据表中的记录以某个或者某些列为标准,值相等的划分为一组。
语法格式
GROUP BY { column_name } [ , ... ]
使用方法
GROUP BY子句中的表达式可以包含FROM子句中表,视图的任何列,无论这些列是否出现在SELECT列表中。
GROUP BY子句对行进行分组,但不保证结果集的顺序。 要对分组进行排序,请使用ORDER BY子句。
GROUP BY后的表达式可以使用括号,如: group by (expr1, expr2),或者 group by(expr1), (expr2)。 但不支持 group by (expr1, expr2), expr3 格式。
示例:该部门按照岗位和奖金分组,查询每组员工数,结果按人数升序排序。
HAVING子句
与GROUP BY子句配合用来选择特殊的组。HAVING子句将组的一些属性与一个常数值比较,只有满足HAVING子句中条件的组才会被提取出来。
语法格式
HAVING condition [ , ... ]
示例:查询表sections中岗位人数大于3的各岗位员工总数。