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

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

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

  1. 连接de和s,得到每个员工对应的id,部门和工资,记为tb1;
  2. 连接dm和s,得到每个部门对应经理的id,部门和工资,记为tb2;
  3. 根据部门id,把tb2左连到tb1上,形成【员工id,部门id,经理id,员工工资,经理工资】,
    挑出员工工资大于经理工资的那些对应列即可;

代码:
select tb1.emp_no,tb2.manager_no, tb1.emp_salary, tb2.manager_salary
from
(select de.emp_no, de.dept_no, s.salary emp_salary
from dept_emp de, salaries s
where de.emp_no = s.emp_no) as tb1

left join

(select dm.dept_no, dm.emp_no manager_no, s.salary manager_salary
from dept_manager dm, salaries s
where dm.emp_no = s.emp_no) as tb2

on tb1.dept_no = tb2.dept_no
where tb1.emp_salary > tb2.manager_salary

全部评论

相关推荐

尊嘟假嘟点击就送:加v细说,问题很大
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务