题解 | #获取员工其当前的薪水比其manager当前薪水还高的相关信息#

获取员工其当前的薪水比其manager当前薪水还高的相关信息

http://www.nowcoder.com/practice/f858d74a030e48da8e0f69e21be63bef

本题思路:首先从表中分别得到员工工资表和manager工资表,将其按照部门连接;然后使用员工薪资高于manager薪资这一条件,筛选即可求解。
select t1.e1,t2.e2,t1.salary,t2.salary from
(select de.emp_no e1,dept_no d1,salary
from dept_emp de left join salaries s on de.emp_no = s.emp_no
where de.emp_no not in (select emp_no from dept_manager)) t1   ----- 员工薪资表
left join
(select de.emp_no e2,dept_no d2,salary
from dept_emp de left join salaries s on de.emp_no = s.emp_no
where de.emp_no in (select emp_no from dept_manager)) t2  ----- manager薪资表
on t1.d1 = t2.d2  -----  按部门连接
where t1.salary > t2.salary  ----- 筛选条件,员工工资大于manager工资
ps:题中的表连接均采用left join,否则在筛选时容易漏掉信息
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-08 17:10
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-03 17:30
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷...:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务