ORACLE SQL リファレンス(逆引き)

ORACLE SQL リファレンス

Web oracle.se-free.com
SELECTの結果をINSERTする
スポンサード リンク

INSERT 表にレコードをINSERTする
INSERT ALL|FIRST
 WHEN 条件1 THEN
    INTO 表1
 WHEN 条件2 THEN
    INTO 表2
 ELSE
    INTO 表3
SELECT * FROM 表
ALLかFIRSTのどちらか指定します。
ALLを指定した場合、条件に一致した表の全てにINSERTします。
FIRSTを指定した場合、最初に一致した条件の表にINSERTします。


例1) 表「emp」のレコードを表「emp01」へinsertする
insert into emp_01
select * from emp;


例2) 表「emp」の列「sex」が'1'のレコードは、表「emp01」へinsertする。
     また、列「sex」が'2'の場合は、表「emp02」へinsertする 。
insert all
 when emp.sex = '1' then
  into emp_01
 when emp.sex = '2' then
  into emp_02
select * from emp;


スポンサード リンク


SELECTの結果をINSERTする
SELECTの結果から条件により、INSERTするテーブルを振り分ける(INSERT〜WHEN)
SELECTで取得した値でUPDATEする
更新レコードのデータによって、UPDATEする内容を変更する
レコードが存在しなければINSERT、レコードが存在すればUPDATEする(MERGE)
SELECTで取得した値をキーにDELETEする
重複したレコードをDELETEする

SQL(DML2) へ
忘れっぽいエンジニアのオラクルSQLリファレンス TOPへ