首先利用窗口函数对薪资进行排序。

# 这里是密集排序,dense_rank()函数,区别于rank() 和 row_number(),不清楚这个知识点可以自己学习一下。

select
  emp_no,
  salary,
  dense_rank() over(order by salary desc) as t_rank
from
  salaries

对上面的排序结果,再进行 t_rank和emp_no升序排序

select
   emp_no,
   salary,
   t_rank
from
  (
   select
    emp_no,
    salary,
    dense_rank() over(order by salary desc) as t_rank
  from
    salaries
   ) aa
order by 
  t_rank asc,
  emp_no asc