分组函数与查询
max():最大值;min():最小值;sum():和;avg():平均值;
count():计算非空的个数;建议使用count(*); count(1)
这些是通用的,sqlserver、oracle、mysql 都是一样的
语法
select 分组函数 别名,分组后的字段
from 表
【where 分组前筛选】
group by 分组的字段
【having 分组后筛选】
【order by 排序的字段】
从上到下依次顺序,不能颠倒顺序
例题:
1.查询各部门的最高工资
SELECT MAX(salary) FROM employees WHERE department_id IN(20,90,30);
SELECT MAX(salary) FROM employees GROUP BY department_id;
2.查询电话以“110”开头的,工种号包含字符’T’的,每个工种的平均工资>5000的工种号和平均工资
SELECT job_id,AVG(salary) FROM employees
WHERE phone_number LIKE \’110%\’ AND job_id LIKE ‘%T%’ GROUP BY job_id HAVING AVG(salary)>5000;
数据库分组函数与查询MySQL
未经允许不得转载:爱站程序员基地 » 数据库分组函数与查询MySQL