본문 바로가기
CS/데이터베이스

[Oracle] 한번에 데이터 입력, 수정, 삭제 (MERGE)

by 김크롱 2020. 9. 17.

한번에 데이터 입력, 수정, 삭제 (MERGE)

 

 

MERGE INTO table1 t1
USING table2 t2
ON (t1.column1=t2.column1) --JOIN
WHEN MATCHED THEN --MERGE UPDATE절 (JOIN 되면 실행)
UPDATE SET t1.column2=t2.column2
WHEN NOT MATCHED THEN --MERGE INSERT절 (JOIN 안되면 실행)
INSERT (t1.column3, t1.column1, t1.column2) VALUES (10, t2.column1, t2.column2);

: t1.column1과 t2.column1이 같다면, t1.column2에 t2.column2로 수정(UPDATE)하고 그렇지 않으면 t1.column3, t1.column1, t1.column2에 각각 10, t2.column1, t2.column2를 입력함

- JOIN 되면 UPDATE, 안되면 INSERT를 실행