MERGE INTO ...
USING ... ON ...
WHEN MATCHED THEN ...
WHEN NOT MATCHED THEN ...
보통 테이블에 이미 존재하는 KEY가 있으면 UPDATE하고 없으면 INSERT하고싶을때 사용한다
USING 구절에 참조 테이블이나 dual을 써도되고
아래와 같이 서브쿼리를 사용해도 된다
MERGE INTO 테이블 a
USING (
SELECT 컬럼1
FROM 서브테이블
) b
ON ( a.컬럼1 = b.컬럼1 )
WHEN MATCHED THEN
UPDATE SET
a.컬럼2 = b.컬럼2,
...
WHEN NOT MATCHED THEN
INSERT (a.컬럼2, ...)
VALUES (b.컬럼2, ...);
'RDBMS > Oracle & Tibero' 카테고리의 다른 글
시간 조회 성능 (0) | 2024.03.22 |
---|