题解 | 查找在职员工自入职以来的薪水涨幅情况

查找在职员工自入职以来的薪水涨幅情况

https://www.nowcoder.com/practice/fc7344ece7294b9e98401826b94c6ea5

-- 首先需要把在职员工及当前薪水找出来
WITH 
employeed AS(
    SELECT emp_no,salary
    FROM salaries
    WHERE to_date = '9999-01-01'
    GROUP BY emp_no,salary
),
-- 第二步把员工的初始薪水找出来
original_salary AS(
    SELECT emp_no,salary,DENSE_RANK() OVER(partition by emp_no order by to_date) ranking
    FROM salaries
)
-- 再连接一下这两个表
SELECT t1.emp_no,t1.salary - t2.salary AS growth
FROM employeed t1
JOIN original_salary t2
ON t1.emp_no = t2.emp_no
WHERE t2.ranking = 1
ORDER BY growth

全部评论

相关推荐

dao_yi:投了1000个左右,回消息的很少,要简历然后说过几天联系的都没有消息了,约面试的基本都是3000左右,足够在当地生活,最后去了一个武汉的3000,干了两天回来考研了,感觉这个行业加班是常态,看能不能考研上岸找个国企,或者大厂。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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