题解 | #获取所有非manager的员工emp_no#

获取所有非manager的员工emp_no

http://www.nowcoder.com/practice/32c53d06443346f4a2f2ca733c19660c

两种思路(推荐思路2):
思路1:
1、先从dept_manager表里查出emp_no
2、不在dept_manager表里的emp_no就是非manager的emp_no
select
  emp_no
from
  employees
where
  emp_no not in (            //不在dept_manager表里的emp_no就是非manager的emp_no
    select                         //先从dept_manager表里查出emp_no
      emp_no
    from
      dept_manager
  );
思路2:
1、利用左外连接查询employees所有数据,此时emp_no每行对应的dept_no可能会出现null
2、为null就是非manager的emp_no
select
  e.emp_no
from
  employees e
left outer join                 //利用左外连接查询employees所有数据,此时emp_no每行对应的dept_no可能会出现null
  dept_manager d
on
  e.emp_no = d.emp_no
where
  dept_no is null;        //为null就是非manager的emp_no

全部评论

相关推荐

头像
11-07 01:12
重庆大学 Java
精致的小松鼠人狠话不多:签哪了哥
点赞 评论 收藏
分享
评论
2
收藏
分享
牛客网
牛客企业服务