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

OracleSQL相関更新

    t1とt2の間、またはt2とt3の間に1対多の関係がある場合、t1の各行に対して多くの一致が得られます。 t1の同じ行に属するt3のすべての行がdの同じ値を持っていることがわかっている場合は、DISTINCTを使用できます。 (同一の)重複を削除します。

    UPDATE table1 t1
       SET t1.c = (select DISTINCT t3.d
                   from table2 t2, table3 t3
                   where t2.b = t3.b and t1.a = t2.a)                                  
     WHERE EXISTS ( SELECT 1 FROM table2 t2, table3 t3 WHERE t1.c = t3.c and t1.a = t2.a);
    


    1. 非常に大きなテーブルでのMysqlカウントのパフォーマンス

    2. flutterをlocalhostmysqlデータベースに接続する方法

    3. Oracleで文字列の一部を削除する方法

    4. Oracle PL/SQLでのCSVファイルの読み取りとインポート