-- 员工 部门 薪水 该部门薪水排名 先求出这个表
-- 然后 筛选出 排名=1 的
select a.dept_no, a.emp_no, a.salary
from (
select d.emp_no, d.dept_no, s.salary, dense_rank() over(partition by d.dept_no order by salary desc) as rk
from dept_emp d
left join salaries s on d.emp_no=s.emp_no
) a
where a.rk=1
order by a.dept_no asc
-- dense_rank 不跳过 1 1 2 2 3 4 这样,而不是 1 1 3 跳过

京公网安备 11010502036488号