查询每个部门最高薪水的人员名称

    第一步:先查出每个部门的最高薪水(根据部门编号分组查询,找出每组的最大值)

    1. select deptno,max(sal) maxsal from emp group by deptno;

    image.png

    第二步:将上面的查询结果,当做一张临时表 t,再将 t表 和 emp员工表 连接。
    连接条件就是:临时表t的部门编号 = 员工表emp的部门编号,临时表t的最高薪水 = 员工表emp的薪水

    1. select
    2. e.ename,t.*
    3. from
    4. emp e
    5. join
    6. (select deptno,max(sal) maxsal from emp group by deptno) t
    7. on
    8. t.deptno=e.deptno and t.maxsal=e.sal;

    image.png