每个部门的平均工资怎么查?用GROUP BY就挺方便的。EMP 表里一堆员工数据,要是想看看每个部门发得咋样,用个分组聚合就能搞定,查询还挺快,逻辑也不复杂。

像下面这样:

SELECT DEPTNO, AVG(SAL)
FROM EMP
GROUP BY DEPTNO;
是不是直观?输出里每个部门就一条记录,工资平均值清清楚楚,哪儿高哪儿低一目了然。

嗯,值得提醒一句,别忘了GROUP BY会把表拆成几块来看,适合那种你想对某些字段做分组统计的场景,比如工资、销售额、打卡次数啥的。配合HAVING还能筛条件,比如只看平均工资高于 2000 的部门,也灵活。

如果你对聚合函数、分组查询不太熟,建议看看下面这些文章,蛮有的:

如果你正好在写人事类报表、财务系统或者类似的统计页面,这段 SQL 思路可以直接拿来用,效率还不错,维护起来也简单。