×
DML文
MERGE文は、従来 IF-THEN-ELSE や個別クエリの連打が必要だった「存在すればUPDATE、無ければINSERT」という処理を1つのSQLステートメントでアトミックに実行できるようにした強力な構文です。MERGE INTO ターゲット USING ソース ON (結合条件) から始まり、WHEN MATCHED THEN UPDATE SET ... 句と WHEN NOT MATCHED THEN INSERT ... VALUES ... 句で構成されます。Oracle 10g以降では、どちらか一方の句のみ(例: MATCHED句のみ)を記述することも可能になり、UPDATE句の中に DELETE WHERE 条件 を追加することも可能です。

試験でのポイント

1Z0-071試験におけるMERGE文の絶対暗記制約ルール:「ON 句(結合条件)で指定した列は、WHEN MATCHED THEN UPDATE 句の SET の更新対象列として指定することができない」(指定すると ORA-38104 エラーが発生する)。これは結合の基準キー自体を更新しようとする論理的矛盾を防ぐための制約です。また、ターゲットテーブルとソーステーブルのエイリアス指定ルール、MATCHED / NOT MATCHED 句の片方省略が許可されている点も試験の狙い目です。 特に Oracle Database 特有の挙動(NVLや独自結合記法など)と、ANSI/ISO SQL 標準規格の記法(COALESCEやJOIN構文など)の両方の違いを意識して学習を進めることが得点力アップに直結します。

関連する用語

個別のデータ操作である「INSERT文」「UPDATE文」「DELETE文」、処理を確定する「トランザクション制御」と密接に関連します。 これらの用語と組み合わせて出題されるケースが多いため、相互の概念の違いやデータ連携の流れを意識しながら復習を行いましょう。

ファクトチェック:ORACLE MASTER Silver SQL 2019 / 1Z0-071-JPN(2026-08-01確認)。試験時間120分、78問、合格ライン63%です。掲載記事は2019試験の学習用で、現行26ai試験とは別資格として扱います。

この記事は公式出題範囲・チェックリストとの対応を編集部で確認した学習解説です。

公式資料

用語集一覧 / ← 前の記事 / 次の記事 →