반응형
MERGE 문은 조건을 비교해서 태이블에 해당 조건에 맞는 데이터가 없으면 INSERT 있으면 UPDAT를 수행하는 문장이다. 특정 조건에 따라 어떤 때는 INSERT를 또 다른경우에는 UPDATE를 수행하는 문장이다. 특정 조건에 따라 어떤 때는 INSER를 또, 다른 경우에는 UPDAT문을 수행해야 할때, 과거에는 해당 조건을 처리하는 로직을 별도로 작성해야 했지만 MERGE문이 나온덕분에 이제 한 문장으로 처리할 수 있게 되었다.
MERGE INTO [스키아.] 테이블명
USING(UPDATE나 INSER될 데이터 원천)
ON(UPDATE 될 조건)
WHEN MATCHED THEN
SET 컬럼1 = 값1 , 컬럼2 = 값2..
WHERE UPDATE 조건
DELETE WHERE UPDATE_DELETE 조건
WHEN NOT MATCHED THEN INSERT (컬럼1,컬럼2) VALUES(값1,값2..)
WHERE INSERT 조건;
MERGE 문은 INSERT UPDATE에 비해 다소 복잡하다
반응형
'DB' 카테고리의 다른 글
Oracle(표현식) (0) | 2020.12.23 |
---|---|
Oracle(의사컬럼) (0) | 2020.12.23 |
Oracle (index) (0) | 2020.12.21 |
오라클 View (0) | 2020.12.21 |
Oracle(트리거생성,UPDATE,INSERT) (0) | 2020.12.10 |