题解 | #获取每个部门中当前员工薪水最高的相关信息#
获取每个部门中当前员工薪水最高的相关信息
http://www.nowcoder.com/practice/4a052e3e1df5435880d4353eb18a91c6
获取每个部门中当前员工薪水最高的相关信息
解题:根据题目,首先应该对部门进行分组,然后对薪水最大值查询
SELECT e.dept_no,s.emp_no,max(s.salary) as maxsalary
FROM dept_emp e join salaries s
on e.emp_no = s.emp_no
group by e.dept_no;
使用外连接,连接起两张表,避免条件筛选的问题
然后对部门编号进行分组,选择工资的最大值
需要注意执行顺序
from -> where -> group by -> having -> select -> order by -> limit
原本想使用排序,但是这样出错了,可能是对分组后总的部门进行了排序,但是选择工资表里工资的最大值测试是对的,但是不知道里面的逻辑是否正确?