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

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

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

#不用窗口函数进行排序,不等式自连接后笛卡尔积后通过count(去重)取排名,因为笛卡尔积后,排名越高,通过不等式的限制,其能连接到的值越少,count(去重)得到值越小=排名高

select
s1.emp_no,s1.salary,count(distinct s2.salary) as t_tank

from
salaries s1 inner join salaries s2
on s1.salary <= s2.salary
group by s1.emp_no, s1.salary
order by t_tank asc, s1.emp_no asc

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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