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

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

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

select emp_no,salary
from (SELECT emp_no,salary,
dense_RANK() OVER (ORDER BY salary DESC) AS salary_rank--窗口函数DENSE_RANK()必须放在子查询中,先计算排名,再在外部WHERE子句筛选排名(WHERE无法直接引用窗口函数结果,因为WHERE是筛选行,窗口函数是对筛选后的行计算排名)
FROM salaries
where to_date="9999-01-01" ) AS rank_salaries
where salary_rank=2
order by emp_no 

全部评论

相关推荐

头像 会员标识
今天 15:38
浙江大学 Java
点赞 评论 收藏
分享
头像 会员标识
今天 15:39
浙江大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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