반응형
일단 MERGE INTO를 사용하기 전에
이렇게 생긴 테이블이 있다는 것을 알아두자
MERGE INTO는 조건을 하나 주고 맞으면 ~하고
아니면 ~한다 이런 내용인데 IF ELSE가 생각나지 않나
MERGE INTO는 조건에 맞으면 UPDATE 아니면 INSERT 이런 내용으로 주로 사용된다
예제로 한번 확인해보자
MERGE INTO로 뭔가 할 테이블을 정하고
USING으로 비교할 테이블을 정한다
자기 자신과 비교할 경우에는 DUAL을 사용해 주면 된다
이후 ON으로 비교 조건문을 만들고
(중복 방지를 위해 KEY를 비교해야 한다..)
조건에 충족했을 경우에는
WHEN MATCHED THEN
조건에 충족하지 않았을 경우에는
WHEN NOT MATCHED THEN
으로 끝낸다
이후 실행해 보면 NAME이 KIM인 사람이 있었기에 VAL이 999로 바뀐 것이 보인다
다음으로는 조건에 충족하지 않은
WHEN NOT MATCHED THEN의 상황을 알아보자
조건문에 설정한 NAME이 CHOI인 사람은 없으므로
INSERT가 되어 'HAHA', 99로 삽입이 된 것이 보인다
반응형
'IT > Oracle' 카테고리의 다른 글
오라클 CHAR, VARCHAR2 차이 알아보기 (0) | 2019.07.10 |
---|---|
오라클 INSTR로 문자열 위치 확인하기 (0) | 2019.03.27 |
오라클 TRIM, LTRIM, RTRIM 으로 공백 제거하기 (0) | 2019.03.27 |
오라클 DECODE 알아보기 (0) | 2019.03.25 |
오라클 NVL, NVL2 알아보기 (0) | 2019.03.25 |
댓글