关于SQL结构化查询语言中(+)的用法

一、概述

  (+):从符号上理解为添加一些内容进入结果集中,那么自然会问到这么几个问题

    1、添加什么内容

    2、怎么添加

    3、添加到什么结果集中

  以下内容将以实例说明上面3个问题。

二、实例

  以Oracle数据库,scott用户中中的EMP(职员表),DEPT(部门表)为例

  1、EMP(职员表)

  

  2、DEPT(部门表)的备份表DEMP_TMP

  

  3、查询

  

三、分析结果

  EMP表有14条记录、DEPT_TMP表有4条记录,按照SQL多表查询结果集=各个子表之间的级联笛卡尔积的原则,以上查询结果集中应该有4*14=56条记录

  a.deptno=b.deptno(+)  --左连接,以左边的表a中的列为基准即:a表的列需要全部列出,当b表中存在a.deptno=b.deptno时以b表的对应记录补充相应的a表的记录,当b表中不存在a.deptno =b.deptno时以null值补充相应的a表的记录。

四、小结

  (+)操作符的作用

  ①、添加null值到对应的连接表中的记录

  ②、以补充列的方式添加

  ③、添加到要连接的表的相应的记录中去

  

原文地址:https://www.cnblogs.com/foreverngu/p/3525052.html