分组函数作用于一组数据,并对一组数据返回一个值。他们分别有AVG、COUNT、MAX、MIN、SUM. 注: 不能在 WHERE 子句中使用组函数,
一、组函数类型
1、AUG(平均值):select avg(salary) from employees
2、COUNT(计数):select count(salary) from employees
3、MAX(最大值): select MAX(salary) from employees
4、MIN(最小值): select MIN(salary) from employees
5、SUM(合计): select SUM(salary) from employees
二、分组数据:GROUP BY子句语法
在SELECT 列表中所有未包含在组函数中的列都应该包含在 GROUP BY 子句中。
Select employee_ID , MAX(salary) from employees group by employee_ID
也可以这样写,因为包含在 GROUP BY 子句中的列不必包含在SELECT 列表中
Select MAX(salary) from employees group by employee_ID
这样的结果虽然没有“employee_ID”列 ,但是查询出来的“MAX(salary)”是一样的。
在GROUP BY子句中包含多个列
Select last_name , employee_ID , MAX(salary) from employees group by last_name , employee_ID
三、过滤分组: HAVING 子句
Select employee_ID , MAX(salary) from employees group by employee_ID having MAX(salary) > 5000