Ich möchte eine Zeile nur, wenn zwei Werte (oder mehr) der Abfrage einzufügen ist anders:MySQL: Legen Sie nur, wenn
INSERT INTO table (id, title, description)
VALUES(1, 'hello', 'world')
ONLY IF title AND description DOESN't ALREADY EXISTS
Ich möchte eine Zeile nur, wenn zwei Werte (oder mehr) der Abfrage einzufügen ist anders:MySQL: Legen Sie nur, wenn
INSERT INTO table (id, title, description)
VALUES(1, 'hello', 'world')
ONLY IF title AND description DOESN't ALREADY EXISTS
Ich glaube, Sie replace into
verwenden können, wenn Sie einen eindeutigen Schlüssel auf der hinzufügen
REPLACE INTO table (id, title, description)
VALUES(1, 'hello', 'world')
INSERT INTO TABLE (ID, TITLE, DESCRIPTION) VALUES (1, 'hello', 'world')
WHERE (SELECT COUNT(ID) FROM TABLE WHERE TITLE='hello' AND DESCRIPTION='world') = 0
Wie ich weiß, ist es nicht möglich 'WHERE' mit' INSERT' zu verwenden, bu t Ich habe deine Lösung ausprobiert und es funktioniert nicht, was mache ich falsch? : \ – Adam
möglich Duplikat [MySQL INSERT nur, wenn zwei Felder nicht übereinstimmen] (http://stackoverflow.com/questions/9475670/mysql-insert-only-if-two-fields -dont-match) – Neil