본문 바로가기
DBMS/MySQL

[MySQL] 마이에스큐엘_중복된 데이터 무시하고 INSERT 하기 (feat. IGNORE)

by 썸머워즈 2020. 1. 17.
반응형

- INSERT IGNORE INTO -


데이터가 이미 있으면 따로 후속처리없이


그냥 아무행위도 안하고 나머지 데이터들만 INSERT를 진행하고자할 때


INSERT INTO 구문에 IGNORE을 추가해주면 된다.


해당 구문은 다음과 같다


INSERT IGNORE INTO [TABLE] (COLUMN1, COLUMN2, ...)

VALUES (VALUE1, VALUE2, ...)


기존 INSERT INTO 사이에 IGNORE을 추가해주기만 한거라


구문 자체는 매우 간단하다.


예)


CREATE TABLE MINE(

id VARCHAR(10) PRIMARY KEY,

name VARCHAR(10),

salary NUMBER

)


가볍게 테이블 하나 있다 치고


INSERT IGNORE INTO MINE VALUES ("CD2""HAN"20000)


위의 쿼리를 그대로 실행하면


id

name 

salary 

 CD2

HAN 

20000 


이러한 결과가 나오며



INSERT IGNORE INTO MINE VALUES ("CD2""PARK"40000)


해당 쿼리를 한번 더 실행하면


id

name 

salary 

 CD2

HAN

20000


이미 PK값이 있기때문에 에러는 발생하지 않고 


IGNORE 뜻과 마찬가지로 데이터를 INSERT 하지 않는다.


그래서 결과는 그대로이다.

반응형


댓글

TOP