Oracle的多表查询---------------外链接

/*

   语法:

   []连接: select * from tab1 left jointab2 on 条件       tab1为基准表,tab1的数据全部显示

   []连接:select * from tab1 right jointab2 on 条件      tab2为基准表,tab2的数据全部显示

  

   注意:外连接查询效果:以基准表为主,基准表会全部显示

  

*/

 

-- 需求:查询每个部门下面的员工

 

-- 左连接

select d.deptno,d.dname,e.ename

from dept d leftjoin emp e

on e.deptno = d.deptno;

 

-- 右连接

select d.deptno,d.dname,e.ename

from   emp e rightjoin dept d

on e.deptno = d.deptno;

 

-- Oracle特有的外连接语法 (了解,不推荐使用)

-- 规则: +号在哪边,对面那边的表就是基准表

select d.deptno,d.dname,e.ename

from emp e,dept d

where e.deptno(+) = d.deptno;

 

 -- 40号部门下面没有员工

 

select * from emp; 

select * from dept; 


猜你喜欢

转载自blog.csdn.net/weixin_42261037/article/details/80949970
今日推荐