Database
MERGE문 사용해 INSERT, UPDATE 처리하기
:_:
2021. 6. 29. 13:36
MERGE
변경할 테이블에 데이터가 있는지 확인 하고 insert , update 를 한번에 처리 할 수 있다.
MERGE INTO 변경할 테이블
USING (select 1 as dummy) a
ON 비교할 조건
WHEN MATCHED THEN
UPDATE SET 칼럼 = '값' // 조건 만족하는 데이터가 있는 경우
WHEN NOT MATCHED THEN
INSERT (칼럼) VALUES (값); // 조건 만족하는 데이터가 없는 경우
* MERGE 문은 세미콜론(;)으로 종료해야 한다.
EX.
SELECT * FROM kkk_test;
- MERGE 사용해서 update 해보기
MERGE INTO kkk_test as a
USING (SELECT 1 AS dual) AS b
ON (a.id=71)
WHEN MATCHED THEN
update SET a.username='홍길동'
WHEN NOT MATCHED THEN
insert (userid, username, phone, email, address, contents)
VALUES ( 'test1234', '홍길동' , '01012345678', 'test@test.com', '서울', 'test');
- MERGE 사용해서 insert 해보기
MERGE INTO kkk_test as a
USING (SELECT 1 AS dual) AS b
ON (a.id=72)
WHEN MATCHED THEN
update SET a.username='홍길동'
WHEN NOT MATCHED THEN
insert (userid, username, phone, email, address, contents)
VALUES ( 'test1234', '홍길동' , '01012345678', 'test@test.com', '서울', 'test');
728x90