Oracle Database 別テーブルから更新と挿入を行う
- 作成日 2023.03.17
- Oracle Database
- Oracle Database
Oracle Databaseで、別テーブルから更新と挿入を行う手順を記述してます。「MERGE」で可能です。ここでは、実際に実行した結果を画像で掲載してます。
環境
- OS windows11 home
- Oracle Database 21c Express Edition
- SQL Developer 21.2.1.204
手順
別テーブルから更新と挿入を行うには、「MERGE」を使用します。
MERGE INTO テーブル1 USING テーブル2
ON テーブル1.列1 = テーブル2.列1
WHEN MATCHED THEN
UPDATE SET
列名 = テーブル2.列名, 列名 = テーブル2.列名
WHEN NOT MATCHED THEN
INSERT (列名, 列名 ・・・ )
VALUES (テーブル2.列名, テーブル2.列名 ・・・ );
実際に、以下のテーブル「SAMPLETBL2」を使って「SAMPLETBL」にデータがあれば更新して、なければ挿入してみます。
テーブル「SAMPLETBL」
テーブル「SAMPLETBL2」
実際に実行してみます。
MERGE INTO SAMPLETBL USING SAMPLETBL2
ON ( SAMPLETBL.id = SAMPLETBL2.id )
WHEN MATCHED THEN UPDATE SET
name = SAMPLETBL2.name, age = SAMPLETBL2.age
WHEN NOT MATCHED THEN
INSERT (id, name, age)
VALUES (SAMPLETBL2.id, SAMPLETBL2.name, SAMPLETBL2.age);
実行結果
更新と挿入がされているかを確認してみます。
SELECT * FROM SAMPLETBL;
実行結果を見るとデータが更新と挿入されていることが確認できます。
-
前の記事
kotlin 中央値を計算する 2023.03.17
-
次の記事
GAS シートが存在するスプレッドシートを取得する 2023.03.18
コメントを書く