题解 | #对所有员工的薪水按照salary降序进行1-N的排名#

对所有员工的薪水按照salary降序进行1-N的排名

http://www.nowcoder.com/practice/b9068bfe5df74276bd015b9729eec4bf

解题思路:

  1. 先按照工资进行排序,根据题目要求的工资排序方式,因此选择dense_rank()函数。
  2. 因为当工资相同时,还需要按照员工编号再进行排序,因此外层再次使用order by,值得注意的是,这里排序是就需要使用两个字段:t_rank和emp_no,如果只有emp_no则排序会出现问题。
select emp_no, salary, dense_rank() over (order by salary desc) as t_rank
from salaries
order by t_rank,emp_no
;
全部评论

相关推荐

逆流河上万仙退:我觉得佬没必要 学历在这里 去了也不会对履历有很大提升 只是有可能让自己更熟练 是我的话会更倾向于找暑期或者中大厂日常
查看13道真题和解析
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务