题解 | #获取所有非manager员工当前的薪水情况#

获取所有非manager员工当前的薪水情况

http://www.nowcoder.com/practice/8fe212a6c71b42de9c15c56ce354bebe

/*
    分析:                        需要用的表
    构建新表1:
    目的:查非manager的员工:(输出结果如下)
            dee.emp_no     dee.dept_no  dem.emp_no
               10001             d001                    10002
select dee.emp_no,dee.dept_no
from dept_emp as dee left outer join dept_manager as dem
on dee.dept_no = dem.dept_no 
where dee.emp_no <> dem.emp_no
*/
#然后用新表1和原来的salary表内连接,查出非manager员工编号(来自新表1)对应的薪资(salary表)
select 
    s1.dept_no,
    s1.emp_no,
    s.salary
from (select dee.emp_no,dee.dept_no
      from dept_emp as dee left outer join dept_manager as dem
        on dee.dept_no = dem.dept_no 
       where dee.emp_no <> dem.emp_no #表连接好后才会进行where子句完成筛选
      ) as s1
inner join salaries as s
where s1.emp_no = s.emp_no;
全部评论

相关推荐

Cassifa:发的字比你都多的一律视为骗子或者想白嫖压榨实习生的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务