面试题:查询部门工资排前三的员工信息
2015-08-28 14:54
519 查看
难度:难
表Employee:
表Department:
写一段SQL查询各部门收入前三位的员工信息,返回结果如下:
答案:
表Employee:
+----+-------+--------+--------------+ | Id | Name | Salary | DepartmentId | +----+-------+--------+--------------+ | 1 | Joe | 70000 | 1 | | 2 | Henry | 80000 | 2 | | 3 | Sam | 60000 | 2 | | 4 | Max | 90000 | 1 | | 5 | Janet | 69000 | 1 | | 6 | Randy | 85000 | 1 | +----+-------+--------+--------------+
表Department:
+----+----------+ | Id | Name | +----+----------+ | 1 | IT | | 2 | Sales | +----+----------+
写一段SQL查询各部门收入前三位的员工信息,返回结果如下:
+------------+----------+--------+ | Department | Employee | Salary | +------------+----------+--------+ | IT | Max | 90000 | | IT | Randy | 85000 | | IT | Joe | 70000 | | Sales | Henry | 80000 | | Sales | Sam | 60000 | +------------+----------+--------+
答案:
Select a.Name as Department, b.Name as Employee, b.Salary from Department a, Employee b where b.DepartmentId = a.Id and ( Select count(distinct Salary) From Employee where DepartmentId=a.Id and Salary > b.Salary )<3 order by Department
相关文章推荐
- 程序员面试经典源代码
- 知识点总结: Java 面试宝典 2013版(超长版) - Java 基础部分
- 为什么面试喜欢问算法问题
- 100个 iOS 程序员面试题汇总
- 黑马程序员-----Java基础-----正则表达式
- 程序员如何持续提升自己的开发技能
- 程序员的年龄天花板
- 程序员必须知道的10大基础实用算法及其讲解
- 为什么有的程序员极度推崇 Vim 和 Emacs,却对 IDE 嗤之以鼻?
- 面试进行曲之技术面试(项目经验)
- 大公司的Java面试题集
- 面试进行曲之技术面试
- Java程序员新手老手都离不开8大开发工具!
- IT行业发展前景分析
- 《招聘一个靠谱的iOS》面试题参考答案(上)
- 人生职业规划
- 程序员常去的14个顶级开发社区
- SharePoint面试题集锦
- 为什么程序员有高薪却不高兴?
- C#程序员经常用到的10个实用代码片段