SQL - MERGE INTO

jodbsgh·2022년 7월 4일
0

💾"SQL"

목록 보기
1/5

MERGE INTO로 UPDATE, INSERT를 한방에, 신박한 MERGE 문 ✌👀✌

MERGE INTO란?

MERGE INTO 구문은 TABLE에 존재하는 데이터는 그대로 변경만 하고
없는 데이터는 삽입하여 적절하게 통합하기 위한 예약어다.

MERGEINTO 구문은 대상 테이블 해당 KEY에 맞는 데이터가 이미 존재하면 UPDATE
존재하지 않으면 INSERT를 하여 테이블 ROW가 충돌나지 않으며 데이터를 UPDATE,INSERT 등의 작업을 한번에 해줄 수 있다.

MELONG_CHART 테이블

MELON_CHART_NEW

SQL문 작성

MERGE INTO MELON_CHART M1
USING MELON_CHART NEW M2
ON (M1.SINGER = M2.SINGER AND M1.SONG = M2.SONG)
WHEN MATCHED THEN
    UPDATE SET M1.RANKING = M2.RANKING, M1.RANKING = 'CONTUNUE'
WHEN NOT MATCHED THEN
    INSERT VALUES (M2.RANKING, M2.SINGER, M2.SONG);
 
 
SELECT * FROM MELON_CHART

SQL 결과

SQL 수정

MERGE INTO MELON_CHART M1
USING MELON_CHART NEW M2
ON (M1.SINGER = M2.SINGER AND M1.SONG = M2.SONG)
WHEN MATCHED THEN
    UPDATE SET M1.RANKING = M2.RANKING, M1.RANKING = 'CONTUNUE'
WHEN NOT MATCHED THEN
    INSERT VALUES (M2.RANKING, M2.SINGER, M2.SONG, 'NEW');
 
 
SELECT * FROM MELON_CHART WHERE REMARK IS NOT NULL ORDER BY RANKING;

SQL 수정 결과

profile
어제 보다는 내일을, 내일 보다는 오늘을 🚀

0개의 댓글