题解 | #获取每个部门中当前员工薪水最高的相关信息#

获取每个部门中当前员工薪水最高的相关信息

http://www.nowcoder.com/practice/4a052e3e1df5435880d4353eb18a91c6

使用窗口函数开窗口,计算名次。
然后使用子查询

SELECT 
  t.dept_no, 
  t.emp_no, 
  t.salary 
FROM 
  (
    SELECT 
      d.dept_no, 
      s.emp_no, 
      s.salary, 
      rank() over(
        partition by d.dept_no 
        order by 
          s.salary desc
      ) ranking 
    FROM 
      salaries s 
      join dept_emp d on d.emp_no = s.emp_no
  ) t 
WHERE 
  t.ranking = 1 
order by 
  t.dept_no
全部评论

相关推荐

点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务