약 INSERT ... ON DUPLICATE KEY UPDATE
을 알고 있지만 기존 행을 확인하는 데 사용하는 기준이 고유 또는 기본 키가 아니기 때문에 작동하지 않습니다 . 실제로, 그것은 2 개의 다른 분야 일 것이다. 고유 한 키가 아니기 때문에 값이 고유하지 않을 수도 있습니다.고유하지 않은 열을 기반으로 새 행을 삽입하십시오.
이, 새로운 행을 추가, 그렇지 않으면 업데이트
INSERT INTO
videos
(
first_name,
last_name,
addresss,
plan
)
VALUES
(
:first_name,
:last_name,
:addresss,
:plan
)
그래서 내가 행 이미
WHERE last_name = :last_name AND plan = :plan
이 있는지 말하고 싶은 내 더미 삽입 문입니다.
여러 쿼리를 사용하여이 작업을 수행 할 수 있지만이 작업을 한 번 수행하고 앞뒤로 이동하지 않고도이 작업을 수행 할 수 있는지 알아보기 위해 노력하고 있습니다. 이 작업은 루프에서 수행되므로 다중 쿼리에서 수행해야하는 경우 아마도 쿼리 수가 두 배가됩니다.
이create unique index videos_lastname_plan on videos(lastname, plan);
문서가 명확하게 진술한다 :
이 기사를 읽어 보시기 바랍니다 : http://stackoverflow.com/questions/1361340/how-to-insert-if-not-exists-in-mysql –
는 고유 키는 제한되지 않는다 하나의 열 – Strawberry