题解 | #获取当前薪水第二多的emp_no及对应的薪水#

获取当前薪水第二多的员工的emp_no以及其对应的薪水salary

https://www.nowcoder.com/practice/8d2c290cc4e24403b98ca82ce45d04db

WITH CS AS(
    SELECT * FROM salaries
    WHERE to_date = '9999-01-01'
#先过滤出当前的工资记录命名为CS
),RS AS(
    SELECT 
        CS.emp_no,
        CS.salary,
        DENSE_RANK() OVER(ORDER BY CS.salary DESC) AS R  
    FROM CS  
#针对过滤后的工资记录命名为RS,并用开窗函数排序,DENSE_RANK()不会跳过排序。
)
SELECT 
    RS.emp_no,
    RS.salary
FROM RS
WHERE RS.R = 2
ORDER BY RS.emp_no;
#对排序后的RS工资记录进行筛选,选择排序为2的,并按照员工编号排序

#SQL训练#
全部评论

相关推荐

牛客21331815...:像我一投就pass,根本不用焦虑泡池子
点赞 评论 收藏
分享
09-28 22:01
已编辑
广西科技大学 IT技术支持
合适才能收到offe...:找桌面运维?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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