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

Oracle結合からAnsi結合への変換

    t2のすべての列の場合、これは外部結合になります (+)がありました 修飾子。

    それは次のようになります:

    Select t1.c1, t2.c2, t1.c3
    from t1 left join
         t2 
         on T1.c1 = t2.c1 and T1.c2 = t2.c2 and
            T1.c3 = t2.c3 and T1.c4 = t2.c4
    where T1.c1 = '1';
    

    ただし、一部の列は一致する必要があるため、バージョンは内部結合です。したがって、2番目のテーブルに一致する行が必要です。

    したがって、実際の同等物は次のとおりです。

    Select t1.c1, t2.c2, t1.c3
    from t1 join
         t2 
         on T1.c1 = t2.c1 and T1.c2 = t2.c2 and
            T1.c3 = t2.c3 and T1.c4 = t2.c4
    where T1.c1 = '1';
    

    そして(+) 関係ありません。




    1. -bash:pg_dump:コマンドが見つかりません

    2. sqlalchemyから呼び出されたストアドプロシージャが機能していないのに、workbenchからの呼び出しが機能しているのはなぜですか?

    3. Mysql-大文字と小文字を区別する検索を行う方法は?

    4. SQLSTATE[HY000][1698]ユーザー'root'@'localhost'のアクセスが拒否されました