核心思路就是两张特殊表:
表一(aaa):用来将部门表和薪水表数据整合到一张表上
表二(bbb):用来计算每个部门最高的薪水和对应部门编号

最后就是同时查询表一和表二,添加限制条件:部门必须对的上,而且薪水也对的上;
还有别忘了,部门编号排序。

SELECT aaa.de,aaa.se,aaa.sa
FROM

(SELECT d.dept_no de,s.emp_no se,s.salary sa
FROM dept_emp d
JOIN salaries s
ON d.emp_no=s.emp_no) as aaa,
(SELECT max(s.salary) as ma,e.dept_no as da
FROM dept_emp e 
JOIN salaries s
ON e.emp_no=s.emp_no
GROUP BY e.dept_no) as bbb

WHERE aaa.sa=bbb.ma AND aaa.de=bbb.da

ORDER BY aaa.de;