面试题:查询部门最高工资的员工信息
2015-08-24 21:08
399 查看
难度:中等
表
表
写一段SQL查找出各部门工资最高的员工信息。如上所示,IT部门工资最高的是Max,Sales部门工资最高的是Henry。
答案一:
SELECT D.Name as Department, E1.Name as Employee, E1.Salary as Salary
FROM Employee E1 join Department D
WHERE E1.DepartmentId = D.Id and E1.Salary >= (SELECT MAX(Salary) from Employee E2 WHERE E1.DepartmentId = E2.DepartmentId);
答案二:
SELECT b.Name as Department, a.name as Employee, a.Salary as Salary
FROM Employee a, Department b, (select max(Salary) as Salary, DepartmentId from Employee group by DepartmentId) c
WHERE a.DepartmentId = b.Id and a.Salary = c.Salary and a.DepartmentId = c.DepartmentId
表
Employee保存了所有的员工数据。
+----+-------+--------+--------------+ | Id | Name | Salary | DepartmentId | +----+-------+--------+--------------+ | 1 | Joe | 70000 | 1 | | 2 | Henry | 80000 | 2 | | 3 | Sam | 60000 | 2 | | 4 | Max | 90000 | 1 | +----+-------+--------+--------------+
表
Department保存了所有的部门数据。
+----+----------+ | Id | Name | +----+----------+ | 1 | IT | | 2 | Sales | +----+----------+
写一段SQL查找出各部门工资最高的员工信息。如上所示,IT部门工资最高的是Max,Sales部门工资最高的是Henry。
+------------+----------+--------+ | Department | Employee | Salary | +------------+----------+--------+ | IT | Max | 90000 | | Sales | Henry | 80000 | +------------+----------+--------+
答案一:
SELECT D.Name as Department, E1.Name as Employee, E1.Salary as Salary
FROM Employee E1 join Department D
WHERE E1.DepartmentId = D.Id and E1.Salary >= (SELECT MAX(Salary) from Employee E2 WHERE E1.DepartmentId = E2.DepartmentId);
答案二:
SELECT b.Name as Department, a.name as Employee, a.Salary as Salary
FROM Employee a, Department b, (select max(Salary) as Salary, DepartmentId from Employee group by DepartmentId) c
WHERE a.DepartmentId = b.Id and a.Salary = c.Salary and a.DepartmentId = c.DepartmentId
相关文章推荐
- 面试题:查询重复的Email地址
- 程序员经常去的 14 个顶级开发者社区(转)
- vi/vim使用进阶: 程序员的利器 – cscope
- 首篇
- 10个经典的 Java main 方法面试题
- 10个经典的 Java main 方法面试题
- 10个经典的 Java main 方法面试题
- 2016 阿里校招笔试应用题总结
- 面试题20顺时针打印矩阵
- IOS-7-纪念一下刚刚接到的第一份offer(以下是面试遇到的问题)
- 百度最新面试题集锦
- Java程序员面试中的多线程问题
- 黑马程序员——集合(三)Map和枚举,Conllections工具类
- 【转】我的华为面试经历——技术服务
- 黑马程序员——集合(二)Set
- 程序员请不要乱用验证码
- 黑马程序员-----正则表达式
- 推荐!国外程序员整理的Java资源大全
- 黑马程序员_关于使用IO进行登录注册案例
- 黑马程序员_多线程有关问题