• 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' */

  • 相关阅读:
    地铁项目结对编程
    地铁项目初步计划及简单设计
    构建之法浅读感想
    集美大学1511,1512软件工程课程作业总结
    第二次作业小结
    第二次作业评分可能要 delay 一些
    第一次作业小结
    关于我
    面向对象设计与构造第四单元总结及期终总结
    面向对象设计与构造第三单元作业总结
  • 原文地址:https://www.cnblogs.com/pekkle/p/6568826.html
Copyright © 2020-2023  润新知