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

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

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

with t1 as (
    select
        dept_no,
        max(salary) maxSalary
    from 
        dept_emp a left join salaries b on a.emp_no =b.emp_no
    group by dept_no
),
t2 as (
    select 
        dept_no,
        a.emp_no,
        salary 
    from
         dept_emp a left join salaries b on a.emp_no =b.emp_no
)
select  t1.dept_no ,emp_no,maxSalary from t1 left join  t2 on t1.maxSalary =t2.salary and t1.dept_no =t2.dept_no order by dept_no

t1临时表里 拿到每个部门最高的工资 这里 每个部门最高工资 可以对应的是多个人

t2临时表里 就是简单的进行关联

最后一步查询 就是 与原表关联 拿到部门最高工资对应的 员工id

PS: 单独 一个 "工资"列 不能关联上 员工id 必须还得加上 部门 id

当前这个条件 加上 to_date= "9999-01-01" 就行了 不做考虑

全部评论

相关推荐

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