题解 | #获取所有非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

全部评论

相关推荐

10-09 09:39
门头沟学院 C++
HHHHaos:这也太虚了,工资就一半是真的
点赞 评论 收藏
分享
11-24 19:04
已编辑
湖南工商大学 Java
点赞 评论 收藏
分享
评论
2
收藏
分享
牛客网
牛客企业服务