目录
1.GROUP BY分组使用
例:求员工表中各部门的平均工资
使用GROUP BY子句将数据按部门分
SELECT
department_id,AVG(salary)
FROM employees
GROUP BY department_id;
SELECT
d.department_name,AVG(e.salary)
FROM departments d,employees e
WHERE d.department_id = e.department_id
GROUP BY e.department_id; -- 可以不出现在select列表中
2.使用多个列分组
按照员工表中的department_id 和 job_id
进行分组
SELECT department_id dept_id,job_id,SUM(salary)
FROM employees
GROUP BY department_id,job_id;
3.GROUP BY中使用WITH ROLLUP
with rollup
关键字将在查询出的分组记录之后增加一条记录数量
SELECT department_id,AVG(salary)
FROM employees
WHERE department_id>80
GROUP BY department_id WITH ROLLUP;
不使用和使用with rollup的对比
注意:当使用rollup时,不能同时使用order by子句进行结果排序,即rollup和order by是互相排斥的。
标签:GROUP,MySQL,rollup,分组,使用,department,id From: https://www.cnblogs.com/zhishu/p/16580818.html