OracleのUPDATE SELECT SELECTした結果でUPDATEする【SQL】

OracleのUPDATE SELECT(SELECTした結果でUPDATEする)

OralceのUPDATEはUPDATE SELECT、つまりSELECTした結果でUPDATEすることができます。

UPDATEは「SET」で「更新列」と「値」を指定しますが、「値」をセットする箇所にSELECT文を挿入します。

サンプルデータ

emp

empno empname add_no address
A001 佐藤花子 100-0000 東京都渋谷区1-1-1

addno

add_no address
100-0000 東京都渋谷区1-1-1
100-0001 東京都渋谷区2-1-1



例1. UPDATE SELECT

empno empname add_no address
A001 佐藤花子 100-0001 東京都渋谷区2-1-1

ここではempテーブルの住所を別テーブル「addno」テーブルの内容で更新しました。

例2. UPDATE SELECT 複数列パターン

empno empname add_no address
A001 佐藤花子 100-0001 東京都渋谷区2-1-1

例1のUPDATEはさらに省略できます。UPDATEは複数列をまとめて記述することができます。ここではempテーブルの2つの列「address」「add_no」を別テーブル「addno」テーブルの内容で更新しました。

UPDATE SELECTするパターンとして2つとりあげました。

以上、OracleのUPDATE SELECT(SELECTした結果でUPDATEする)の使い方でした。