본문 바로가기

개발/DB

[MySQL] on duplicate key update (키 값 여부에 따른 insert / update)

반응형

- 나의 상황

: 데이터 저장 시,  같은 KEY 값으로 등록된 데이터가 있으면 update /  없으면 insert 를 해줘야했음.

값이 있는지 확인 후 결과에 따라 insert or update 를 해도 되지만.. 더 간단하게 할 수 있는 방법이 있음! 

- 해결

: on duplicate key update 를 하면 간단하게 해결

INSERT INTO TEST_TABLE (
            KEY_COL                                        
            , COL_1
            , COL_2
            , RGST_DTM                                         
        )
        VALUES (
            #{keyColVal}
            , #{col1Val}
            , #{col2Val}
			, NOW()
        )
        ON DUPLICATE KEY UPDATE 
           COL_1 = #{col1Val}
           , COL_2 = #{col1Val}
           , LAST_UPDT_DTM = NOW()

 

반응형