카테고리 없음
[Oracle] MERGE INTO 사용방법?
하맨디
2023. 5. 4. 16:17
하나의 테이블 혹은 두개의 테이블을 가지고
특정 조건으로 비교해본 뒤
- 조건에 맞으면 UPDATE/ UPDATE 후에 DELETE
- 조건에 맞지 않으면 INSERT 수행
MERGE INTO STDNT A
USING DUAL
ON A.NAME = '하맨디'
WHEN MATCHED THEN
UPDATE SET A.AGE = 100 WHERE A.NAME = '하맨디'
DELETE WHERE A.NAME = '하맨디'
WHEN NOT MATCHED THEN
INSERT (NAME, AGE) VALUES ('하맨디', 100);
MERGE INTO 사용할 테이블
USING 비교할 테이블(단일 테이블인 경우 DUAL)
ON (비교조건) >> 비교한 컬럼명은 UPDATE 불가능
WHEN MATCHED THEN
UPDATE SET 값 WHERE 조건
DELETE WHERE 조건 >> 생략가능
WHEN NOT MATCHED THEN
INSERT (컬럼들) VALUES (값들);