LeetCode.184. 部门工资最高的员工
思路:
首先先对返回表头命名,之后连接两表并设置连接键。接下来不可使用group by语句分组,可能是连表导致的问题将导致最后的结果中姓名不匹配。因此使用二次子查询。
代码:
select d.name as Department,e.name as Employee,e.Salary as Salary
from Employee e join Department d
on e.DepartmentId=d.Id
where (e.DepartmentId,e.Salary) in
( select DepartmentId,max(Salary) as Salary
from Employee
group by DepartmentId
)