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

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

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

SELECT d.dept_no,d.emp_no,s.salary
from dept_emp d inner join salaries s on d.emp_no=s.emp_no
where s.salary in (select max(s1.salary)
from dept_emp d1 inner join salaries s1
on d1.emp_no=s1.emp_no
where d.dept_no=d1.dept_no
group by d1.dept_no)
order by d.dept_no

这道题的难点是要输出不在分组字段的emp_no;
为了输出这个字段,需要考虑结合子查询。
最核心的是子查询中使用了父查询的字段
1)子查询:找到每个组的最高薪资
2)父查询:普通内连接,where中有两个约束,一个是薪资在最高薪资中,还有就是部门也在对应的部分
!!!!!!!! where d.dept_no=d1.dept_no

全部评论

相关推荐

愤怒的查理被升职:每个项目经历后面加关键成果:xxx, 项目经历要和岗位JD匹配,不是有多少项目经历都要写上的,挑选出是个岗位JD的,并且内容往岗位JD方面写,教育背景直接写 大学+专业+时间,一行就过去了。你是建筑投运营别人不看你本科建筑学的怎么样
点赞 评论 收藏
分享
想踩缝纫机的小师弟练...:不理解你们这些人,要放记录就把对方公司名字放出来啊。不然怎么网暴他们
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务