Oracleでレコードが存在しない場合のみInsertする

以下はOracleでレコードが存在しない場合のみInsertするサンプルコードです。

INSERT INTO table_name (column1, column2, column3)
SELECT value1, value2, value3 
FROM DUAL 
WHERE NOT EXISTS (SELECT * FROM table_name WHERE column1 = value1 and column2 = value2);

このコードでは、`table_name`というテーブルに、`column1`、`column2`、`column3`という3つのカラムがあると仮定しています。`value1`、`value2`、`value3`という3つの値を、`DUAL`というテーブルから`SELECT`しています。そして、`NOT EXISTS`を使って、`table_name`に既に同じ`column1`と`column2`の値が存在しない場合にのみ、`INSERT`を行います。

コメント

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