SELECT 
    e.department,
    e.employee_name,
    e.salary
FROM
    (
        SELECT
            department,
            employee_name,
            salary,
            RANK() over (partition by department ORDER BY salary DESC) AS rk 
        FROM
            employees 
    ) e
WHERE e.rk<=2
ORDER BY
    e.department, e.salary DESC

写的时候脑子要清醒。比如我虽然窗口排序了但是在外层居然忘记加WHERE e.rk<=2了