Welcome 微信登录

首页 / 数据库 / MySQL / Oracle命令 外部结合

Oracle 外部结合命令 :理解(+)最重要的一点是,(+)总是放在信息匮乏的一边,这一边的记录会作为空值显示。举例说明:先预览下我们将结合的两个表:EMPLOYEE_CHECK 和 EMPLOYE_CHECK_TMP 。@_1表EMPLOYEE_CHECK :
  1. SQL> SELECT * FROM EMPLOYEE_CHECK;  
  2.    
  3. EMP_ID    EMP_NAME             EMP_ST_ADDR                    EMP_ZIP EMP_ADDR             EMP_CITY             EMP_PHONE   EMP_SALRAY  
  4. --------- -------------------- ------------------------------ ------- -------------------- -------------------- ----------- ----------   
  5. 100000    ZOU QI LEI           BAN TIAN BULONG STREET         518000  YANG MEI VILLAGE     SHEN ZHEN            123456789         3500  
  6. 100001    CAI FANG JIE         BAN TIAN BULONG STREET         518000  YANG MEI VILLAGE     SHEN ZHEN            18218429577   
  7. 100002    LU JING HUAN         FAN YU SESSION                 430060  YANG MEI VILLAGE     GUANG ZHOU           1397165903    
  8. 100003    WU JING XIN          HU BEI DIER SHIFAN XUEYUAN     430060  MING ZHU YUAN        WU HAN               187****235    
  9. 100004    LI WEI               QING SHAN GANG DU HUA YUAN     430060  XIAO QU              WU HAN               197****436  
@_2表EMPLOYEE_CHECK_TMP :
  1. SQL> SELECT * FROM EMPLOYEE_CHECK_TMP;  
  2.    
  3. EMP_ID    EMP_NAME             EMP_ST_ADDR                    EMP_ZIP EMP_ADDR             EMP_CITY             EMP_PHONE   EMP_SALRAY  
  4. --------- -------------------- ------------------------------ ------- -------------------- -------------------- ----------- ----------   
  5. 100001    CAI FANG JIE         BAN TIAN BULONG STREET         518000  YANG MEI VILLAGE     SHEN ZHEN            18218429577   
  6. 100003    WU JING XIN          HU BEI DIER SHIFAN XUEYUAN     430060  MING ZHU YUAN        SHEN ZHEN            187****235    
  7. 100005    DING LING            HAN KOU TAI BEI LU             430060  TIAN MEN DUN NEARBY  WU HAN               137***4256        2000  
现在结合这两个表,用 "+" 进行结合查询:
  1. SQL> SELECT P.EMP_NAME, P.EMP_ADDR, P.EMP_CITY, P.EMP_PHONE, T.EMP_ZIP FROM EMPLOYEE_CHECK P, EMPLOYEE_CHECK_TMP T WHERE <span style="color:#ff6600;">P.EMP_ID</span><span style="color:#3366ff;"> </span>=<span style="color:#3366ff;"> T.EMP_ID(+);  
  2.    
  3. EMP_NAME             EMP_ADDR             EMP_CITY             EMP_PHONE   EMP_ZIP  
  4. -------------------- -------------------- -------------------- ----------- -------   
  5. ZOU QI LEI           YANG MEI VILLAGE     SHEN ZHEN            123456789                         --row_1   
  6. CAI FANG JIE         YANG MEI VILLAGE     SHEN ZHEN            18218429577 518000                 
  7. LU JING HUAN         YANG MEI VILLAGE     GUANG ZHOU           1397165903                       --row_3   
  8. WU JING XIN          MING ZHU YUAN        WU HAN               187****235  430060  
  9. LI WEI               XIAO QU              WU HAN               197****436                       -row_5  
现在观察两个结合查询的表,红色标注主表(P),查询字段为:
  1. P.EMP_NAME, P.EMP_ADDR, P.EMP_CITY, P.EMP_PHONE
蓝色标注临时表(T),查询字段为: T.EMP_ZIP当 "+"(结合标志) 附属在T表上时,除了返回满足查询条件WHERE P.EMP_ID=T.EMP_ID的信息外,同时还会返回P对应的查询字段: row_1, row_3, row_5。
  • 1
  • 2
  • 下一页
Oracle教程:Redo write触发的四种情况Oracle命令 ROLLUP相关资讯      Oracle高级培训 
  • delete表的数据后恢复  (08/30/2012 08:59:58)
  • 使用ASH信息,发现高CPUsession  (08/14/2012 07:21:32)
  • 如何阅读Oracle Errorstack Output  (08/14/2012 07:15:47)
  • Oracle Apps Patching:adpatch(  (08/16/2012 15:41:37)
  • 话说V$SQL_MONITOR  (08/14/2012 07:19:54)
  • Oracle Apps DBA工具:ADADMIN使用  (08/14/2012 07:00:09)
本文评论 查看全部评论 (0)
表情: 姓名: 字数

版权所有©石家庄振强科技有限公司2024 冀ICP备08103738号-5 网站地图