题解 | #获取所有非manager员工当前的薪水情况#
获取所有非manager员工当前的薪水情况
http://www.nowcoder.com/practice/8fe212a6c71b42de9c15c56ce354bebe
四个表的多表关联 先将 员工表和薪水表进行链接 ,提取出员工和员工的薪水 再将部门和部门经理表进行关联 提取出员工和部门 及部门经理 emp_no 并重新命名为manager 然后将两张表关联 ,筛选出员工id和部门经理managerid不相同的即可
select
dept_no,
emp_no,
salary
from
(select
b.dept_no,
a.emp_no,
a.salary,
b.manager
from
(SELECT
a.emp_no,
b.salary
FROM
employees a
LEFT JOIN salaries b ON a.emp_no = b.emp_no)a
left join
(SELECT
a.emp_no,
a.dept_no,
b.emp_no as manager
FROM
dept_emp a
LEFT JOIN dept_manager b ON a.dept_no = b.dept_no)b
on a.emp_no=b.emp_no)c
where emp_no<>manager