题解 | #获取每个部门中当前员工薪水最高的相关信息#

获取每个部门中当前员工薪水最高的相关信息

http://www.nowcoder.com/practice/4a052e3e1df5435880d4353eb18a91c6

核心思路就是两张特殊表:
表一(aaa):用来将部门表和薪水表数据整合到一张表上
表二(bbb):用来计算每个部门最高的薪水和对应部门编号

最后就是同时查询表一和表二,添加限制条件:部门必须对的上,而且薪水也对的上;
还有别忘了,部门编号排序。

SELECT aaa.de,aaa.se,aaa.sa
FROM

(SELECT d.dept_no de,s.emp_no se,s.salary sa
FROM dept_emp d
JOIN salaries s
ON d.emp_no=s.emp_no) as aaa,
(SELECT max(s.salary) as ma,e.dept_no as da
FROM dept_emp e 
JOIN salaries s
ON e.emp_no=s.emp_no
GROUP BY e.dept_no) as bbb

WHERE aaa.sa=bbb.ma AND aaa.de=bbb.da

ORDER BY aaa.de;
全部评论

相关推荐

2 收藏 评论
分享
牛客网
牛客企业服务