DataBase/MySQL

[MySQL] DUPLICATE ON KEY UPDATE

장쫄깃 2022. 9. 2. 17:10
728x90


DUPLICATE ON KEY UPDATE


데이터 삽입 시, PRIMARY KEY나 UNIQUE KEY가 중복되었을 경우 UPDATE, 중복이 아닌 경우 INSERT를 수행하는 구문이다.

 

INSERT INTO [TABLE] (COLUMN1, COLUMN2, ...)
VALUES (VALUE1, VALUE2, ...)
ON DUPLICATE KEY
UPDATE (COLUMN1 = VALUE1, COLUMN2 = VALUE2, ...)

 

기존 INSERT INTO 구문 뒤에 추가해서 사용하면 된다.

성능면에서도 괜찮은 구문이라는 말이 많다.

 

예)

PK = id

INSERT INTO USER (id, name, salary)
VALUES("user", "장쫄깃", 20000)
ON DUPLICATE KEY
UPDATE(name = "최말랑", salary = 30000)
728x90