2024年8月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
無料ブログはココログ

« ビフォーアフターのように | トップページ | Red Hat Linux9にWebminをインストール »

Oracle 結合を含んだ更新

結合を含んだ更新(Update)のOracleでの書き方。
SQL-Serverと違ってUpdate句の中でJoinが使えないのでサブクエリ内で結合する。
また、更新する列をサブクエリ内で取得しておく必要がある。

※テーブル1とテーブル2で結合し、テーブル2の項目でテーブル1を更新する例

・SQL-Serverの場合

UPDATE table1
SET
    COL1 = B.COL1
FROM
    table1 A
INNER JOIN
    table2 B
ON
    A.CD1 = B.CD1

・Oracleの場合

UPDATE
(
    SELECT
        A.COL1 A_COL,
        B.COL2 B_COL
    FROM
        table1 A
    INNER JOIN
        table2 B
    ON
        A.CD1 = B.CD1
)
SET A_COL = B_COL

« ビフォーアフターのように | トップページ | Red Hat Linux9にWebminをインストール »

Oracle」カテゴリの記事

コメント

Oracle11gからサポートされなくなりました

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: Oracle 結合を含んだ更新:

« ビフォーアフターのように | トップページ | Red Hat Linux9にWebminをインストール »