sql >> データベース >  >> RDS >> Oracle

'+'演算子を使用してORACLEでFULLOUTERJOINを実行するにはどうすればよいですか?

    できません(少なくとも直接)。 Oracleは、SQL:1999構文を使用した完全外部結合のみをサポートします。

    2つの外部結合を結合することで偽造できます:

    select a.field1, b.field2
    from table_a a, table_b b
    where a.id = b.id(+)
    union all 
    select a.field1, b.field2
    from table_a a, table b b
    where a.id(+) = b.id
          and a.id is null
    

    SQL:1999構文を使用するとはるかに読みやすくなります:

    select a.field1, b.field2
    from table_a a full outer join table_b b
    on a.id = b.id
    


    1. PHP/MySQL-複数のタグを追加する方法

    2. PHPのURLから同じ名前の複数のパラメーターを取得し、すべてのレコードをテーブルに挿入する方法

    3. Oracle接続を開くと、接続オブジェクトがnullになります

    4. MySQLとC: `[emailprotected]'への未定義の参照|