Oracleで行データをマージする方法は何ですか?
Oracleは、MERGE文を使用して行データを統合することができます。 MERGE文は、指定された条件に基づいて、ソーステーブルのデータをターゲットテーブルにマージし、必要に応じて挿入、更新、または削除操作を行うことができます。
以下は、MERGEステートメントの例です:
MERGE INTO 目标表名 t
USING 源表名 s
ON (t.列名 = s.列名)
WHEN MATCHED THEN
UPDATE SET t.列名 = s.列名
WHEN NOT MATCHED THEN
INSERT (列名1, 列名2, ...)
VALUES (s.列名1, s.列名2, ...)
目標表名はデータを統合する対象のテーブルであり、ソース表名はデータの元となる結合するテーブルを指します。ON句は結合の条件を指定し、ソーステーブルと目標テーブルがその条件を満たす場合は更新操作が実行されます。条件を満たさない場合は挿入操作が行われます。
UPDATE SET句には、更新したい列とその対応する値を指定することができます。
INSERT文で、列とその値を指定することができます。
MERGEステートメントには、少なくとも1つのWHEN MATCHED句またはWHEN NOT MATCHED句が含まれている必要があります。
これは単純な例ですが、実際に使用する際には、必要に応じてデータやテーブル構造を修正や調整してください。