您的位置:首页 > 运维架构

LeetCode | database | Department Top Three Salaries

2018-03-18 12:51 281 查看
题目描述:

已知某公司员工的employee表和department表,写一个sql查询语言找出每个部门工资排前三的员工信息。

employee:



department:



输出结果:



题目解答

where条件语句的意思是:在该部门中比这三名员工中任一位工资高的人不超过3人。

SELECT d.Name AS 'Department', e1.Name AS 'Employee', e1.Salary
FROM
Employee e1
JOIN
Department d ON e1.DepartmentId = d.Id
WHERE
(SELECT
COUNT(DISTINCT e2.Salary)
FROM
Employee e2
WHERE
e2.Salary > e1.Salary
AND e1.DepartmentId = e2.DepartmentId
)<3
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: