2017. 7. 2. 22:56
MERGE INTO C. Oracle2017. 7. 2. 22:56
MERGE INTO : 조건이 맞으면 데이터를 UPDATE 하고 틀리면 INSERT 하는 쿼리
MERGE Statement
MERGE
INTO
Insert 나 update 할 타겟 테이블
USING
타켓 테이블에 들어갈 소스 데이터
ON
인서트 할 것인지 업데이트 할것인지를 결정하는 조건 즉
(조건이 맞으면 업데이트문 실행 조건이 맞지 않으면 인서트 문을 실행)
WHEN MATCHED THEN
조건이 맞았을 때 쿼리문
WHEN NOT MATCHED THEN
조건이 맞지 않았을 때 쿼리문
오라클 도큐먼트에 있는 예문)
MERGE INTO bonuses D
USING (SELECT employee_id, salary, department_id FROM employees
WHERE department_id = 80) S
ON (D.employee_id = S.employee_id)
WHEN MATCHED THEN UPDATE SET D.bonus = D.bonus + S.salary*.01
WHEN NOT MATCHED THEN INSERT (D.employee_id, D.bonus)
VALUES (S.employee_id, S.salary*0.1);
'C. Oracle' 카테고리의 다른 글
oracle 시퀀스 SEQUENCE (0) | 2017.07.02 |
---|---|
oracle 스키마 SCHEMA (0) | 2017.07.02 |
oracle 함수 (0) | 2017.07.02 |
ORA-29275 부분 다중 바이트 문자 Error (0) | 2017.07.02 |
where 1=1 (0) | 2017.07.02 |