题解 | 获取每个部门中薪水最高的员工相关信息
获取每个部门中薪水最高的员工相关信息
https://www.nowcoder.com/practice/4a052e3e1df5435880d4353eb18a91c6
SELECT t.dept_no, t.emp_no, t.salary FROM (SELECT de.emp_no, de.dept_no, s.salary, dense_rank() OVER (PARTITION BY dept_no ORDER BY s.salary DESC ) AS rn FROM dept_emp de JOIN salaries s on de.emp_no=s.emp_no ORDER BY de.dept_no) t WHERE t.rn=1;
1.窗口函数dense_rank() ,对每个部门进行分组,并按工资进行降序排序
2.子查询,查询排行为1的数据
查看14道真题和解析