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

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

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

现在是2021.11
sql8.0
必须用到子查询才能通过,说明select在order by后面运行,其中rank在这个版本中作为关键字,不能作为别名,'rank'也不行,测试了下'xxx'也不行,说明别名不支持字符串?或者字符串不能作为列名?最后结果直接略过'xxx',仅对emp_no排名,会报错
select a.emp_no
, a.salary
, a.rk t_rank
from 
    (select emp_no
    , salary
    , dense_rank()over(order by salary desc)rk
    from salaries
    where to_date='9999-01-01')a
order by t_rank, emp_no
其他人的答案:
select emp_no, salary,
, dense_rank() over (order by salary desc) as rank
from salaries
where to_date='9999-01-01'
order by rank asc,emp_no asc;
现在已经不适用
全部评论

相关推荐

gelmanspar...:奖学金删掉,自我评价删掉,简历压缩一下,写一页
如果再来一次,你还会学机...
点赞 评论 收藏
分享
10-17 23:18
已编辑
西北农林科技大学 Web前端
独行m:给25可以试试,但他只能给12,那就是纯纯的事精
秋招,不懂就问
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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