2016년 12월 20일 화요일

MySQL 의 ON DUPLICATION KEY UPDATE 에 대해서...

MySQL의 INSERT ~ ON DUPLICATE KEY UPDATE ~ 는 보통 다음과 같이 사용된다.

INSERT INTO TALBE ( a, b, c ) VALUES ( 'a', 'b', 'c' ) ON DUPLICATE KEY UPDATE b = 'b2', c = 'c2';

a field 에 UNIQUE INDEX 가 걸려있고 INSERT 시 a 를 중복해서 넣으려고 하면 b에는 b2, c에는 c2라는 값을 넣는 Query이다.

INSERT 를 한개만 하는 경우라면 위와 같이 Query를 만들어도 되지만,

INSERT가 여러개인 경우는 다음과 같이 프로그램을 만들어야 한다.

INSERT INTO TABLE ( a, b, c, ) VALUES ( 'a1', 'b1', 'c1' ), ( 'a2', 'b2', 'c2' ) ON DUPLICATE KEY UPDATE b = VALUES(b), c = VALUES(c);

각각의 INSERT 데이터가 VALUES 에 매칭되어 업데이트 된다.

댓글 1개:

  1. The Star Casino is back in its full-service slot machine,
    The Star Casino has 남양주 출장마사지 rebranded its slot machines into 구리 출장샵 a full-service table game, replacing 순천 출장안마 the 김포 출장안마 more usual slot machine machines. 경상남도 출장마사지

    답글삭제