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

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

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

-- 两张表,在from里内连接
-- 1、员工id,部门id,薪水 emp
-- 2、部门、部门最高薪水 s2
-- 利用两张表组成 emp_No,dept_no,salary,maxSalary
-- 注意在maxSalary中,代表的是每个部门的最高工资,检测该部门中,员工(主键)的工资是否等于最高工资,如果等于就返回
-- 不会出现A部门的员工工资等于B部门最高工资被返回,因为maxSalary代表的是该部门的最高工资,只有部门和最高工资一致才会返回

select emp.dept_no,emp.emp_no,s2.maxSalary
from 
(
    select e.emp_no,e.dept_no,s.salary
    from dept_emp as e inner join salaries as s
        on e.emp_no = s.emp_no
    where e.to_date = '9999-01-01' and s.to_date = '9999-01-01'
)as emp inner join 
(
    select e.dept_no,max(s.salary) as maxSalary
    from dept_emp as e inner join salaries as s
        on e.emp_no = s.emp_no
    where e.to_date = '9999-01-01' and s.to_date = '9999-01-01'
    group by dept_no
)as s2 
on emp.dept_no = s2.dept_no
where emp.salary = s2.maxSalary
order by emp.dept_no;
全部评论

相关推荐

昨天 16:52
已编辑
门头沟学院 Java
周五投的,流程今天结束
投递地平线等公司7个岗位
点赞 评论 收藏
分享
风中翠竹:真的真的真的没有kpi。。。面试官是没有任何kpi的,捞是真的想试试看这个行不行,碰碰运气,或者是面试官比较闲现在,没事捞个人看看。kpi算HR那边,但是只有你入职了,kpi才作数,面试是没有的。
双非有机会进大厂吗
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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