按表达式或函数分组:

#案例:按员工的姓名的长度分组,查询每一组的员工个数,筛选员工个数大于五

SELECT
	COUNT(*),LENGTH(last_name)
FROM
	employees
GROUP BY
	LENGTH(last_name)
HAVING
	COUNT(*)>5;

按多个字段分组: #案例:查询每个部门每个工种的员工的平均工资

SELECT 
	AVG(salary),department_id,job_id
FROM
	employees
GROUP BY
	department_id,job_id;

排序 #案例:查询每个部门每个工种的部门编号不为null的员工的平均工资>10000,并且按平均工资的高低显示

SELECT
	AVG(salary),department_id,job_id
FROM
	employees
WHERE
	department_id IS NOT NULL
GROUP BY
	department_id,job_id
HAVING
	AVG(salary)>10000
ORDER BY
	AVG(salary) DESC;