with combined as (select E.*, D.name as dep_name from employee E left join department D on E.departmentid = d.id ),
ranked as ( select * ,dense_rank() over (partition by dep_name order by salary desc) as rnfrom combined ) select dep_name as department, name as Employee, salary as Salary from…