题解 | #获取每个部门中当前员工薪水最高的相关信息#
获取每个部门中当前员工薪水最高的相关信息
https://www.nowcoder.com/practice/4a052e3e1df5435880d4353eb18a91c6
详情解答参考以下: SELECT de.dept_no, sa.emp_no, sa.salary AS maxSalary FROM (SELECT de.dept_no, MAX(sa.salary) AS max_salary FROM dept_emp AS de LEFT JOIN salaries AS sa ON de.emp_no = sa.emp_no GROUP BY de.dept_no) AS max_salaries INNER JOIN salaries AS sa ON max_salaries.max_salary = sa.salary INNER JOIN dept_emp AS de ON de.dept_no = max_salaries.dept_no AND sa.emp_no = de.emp_no ORDER BY max_salaries.dept_no ASC; 1. 使用子查询并进行分组获取部门编号以及最高薪资 2. 根据 薪资内连接薪资表 获取员工编号 3. 根据 部门编号及薪资表中的员工编号内连接员工表 4. 根据 最高薪资表(子查询)中的部门编号进行排序 当然默认升序可以不写