先找到每个部门的最高薪资 使用窗口函数 以 dept_no 进行分组,可能会存在薪资相同,所以使用 distinct 去重

select distinct dept_no,max(salary) over(partition by dept_no)
            from dept_emp join salaries using(emp_no)

然后判断 dept_no,salary 在筛选出的每个部门最高薪资 最后 dept_no 进行排序

select dept_no, emp_no,salary maxSalary 
	from dept_emp join salaries using(emp_no) 
		where (dept_no, salary) in
		(select distinct dept_no,max(salary) over(partition by dept_no) 
			from dept_emp join salaries using(emp_no))
	order by dept_no;