MERGE INTO文は2つのテーブルを比較してUPDATEとINSERTを条件に従って実行される

スポンサーリンク

MERGE INTO文とは?

MERGE INTO文は、更新元テーブルからSELECTした結果が、更新先テーブルに存在すればUPDATE、存在しなければINSERTを行うSQL文です。

MERGE INTO table1 a
USING(
  SELECT id, name
  FROM table2
) b
ON (a.id = b.id)
WHEN MATCHED THEN
 UPDATE SET a.name = b.name
WHEN NOT MATCHED THEN
 INSERT(id, name) VALUES(b.id, b.name)

table2に指定した条件が存在する場合はWHEN MATCHED THEN、存在しない場合はWHEN NOT MATCHED THENの文が実行されます。

コメント

タイトルとURLをコピーしました