zoukankan      html  css  js  c++  java
  • Oracle外连接与条件的组合

    由于很少使用SQL 92语法,今天写个outer join的时候被搞晕了。参考了一些例子后整理如下。总结,“inter join on”中的条件是对table进行joining的record 进行filter, 而where 对结果集进行filter。

    Table A:

    Key    Value
    1        A1

    2        A2

    3        A3

    Table B:

    Key    Value

    1        B1

    2        B2

    4        B4

    --============================

    select A.*, B.* from A outer join B

    on A.key = b.key;

    Key   Value   Key   Value

    1        A1        1       B1

    2        A2        2       B2

    3        A3  

    /* 普通的A outer join B */

    --============================

    select A.*, B.* from A outer join B

    on A.key = b.key

     and A.key = '1';

    Key   Value   Key   Value

    1        A1        1       B1

    2        A2

    3        A3  

    /* A 只有记录 key='1' 参与了outer join,其他记录保留在结果中 */

    --============================

    select A.*, B.* from A outer join B

    on A.key = b.key

     and A.key = '1'

    where A.key <> '3' ;

    Key   Value   Key   Value

    1        A1        1       B1

    2        A2

    /* A 只有记录 key='1' 参与了outer join,结果中有条件 key <> '3' */

  • 相关阅读:
    servlet ; basepath ; sendredirected ;
    4.18 一个阶段
    服务器强迫患者 ;软件试用狂人
    html ; css ; javascript ; json ;
    评审意见
    Beta版使用说明书
    内测版发布反思问题总结
    团队项目第二阶段冲刺第十天
    团队项目第二阶段冲刺第九天
    团队项目第二阶段冲刺第八天
  • 原文地址:https://www.cnblogs.com/pekkle/p/6568826.html
Copyright © 2011-2022 走看看