select department,employee_name,salary
from 
(
    select department,employee_name,salary,row_number()over(partition by department order by salary desc) as rk
    from employees
) as t
where rk<=2
order by department asc,salary desc