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

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

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

方法:双表

这个题目的本质并不是这两张表,其实可以看作一张表来做。

  1. 找到每个部门的最大薪水和对应的部门号(temp2)
  2. 找到每个员工的薪水,部门号,员工号
  3. 内联,设置条件,查询

ps

其实这道题目如果不用查找员工编号,会很简单。。。。。

select temp1.dept_no,temp1.emp_no,temp1.salary as maxSalary
from (
    select dept_emp.dept_no,dept_emp.emp_no,salaries.salary
    from dept_emp
    inner join salaries
    on dept_emp.emp_no=salaries.emp_no
) as temp1
inner join(
    select max(salary) as ms,dept_emp.dept_no
    from dept_emp 
    inner join salaries
    on dept_emp.emp_no=salaries.emp_no
    group by dept_emp.dept_no
) as temp2
on temp1.dept_no=temp2.dept_no
and temp1.salary=temp2.ms
order by temp1.dept_no;
全部评论

相关推荐

肖先生~:先别说工资,现在有个工作就不错了
点赞 评论 收藏
分享
牛客100866号技...:把电科加粗,把电科加粗,把电科加粗,两个吊车尾的项目合并成一个,再加一个管理系统。电科✌🏻在成都面中厂手拿把掐
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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