题解 | #对所有员工的薪水按照salary降序进行1-N的排名#
对所有员工的薪水按照salary降序进行1-N的排名
http://www.nowcoder.com/practice/b9068bfe5df74276bd015b9729eec4bf
select s.emp_no, s.salary, dense_rank() over (order by salary desc) as t_rank from salaries s where to_date='9999-01-01' order by t_rank, emp_no;
rank的排序为1224, dense_rank的排序为1223,其语法结构如下: dense_rank()over(partition by sth order by sth desc/asc) 其中partition by将from子句生成的结果划分为分区,dense_rank应用于每个分区,order by指定dense_rank分区内的行顺序。
order by A,B语句表明:先按A排序,A相同再按B排序。
查看2道真题和解析
阿里云成长空间 784人发布