Tag: INSERT

MySQL: INSERT … ON DUPLICATE KEY UPDATE …

MySQL bietet die Möglichkeit, beim Ausführen eines INSERT INTO ein UPDATE auszuführen, falls es beim Einfügen des Datensatzes zu einem dublicate key kommt. Dies lässt sich mit folgender Eingabe erzielen:

INSERT INTO <table> (<field1>, <field2>) VALUES (<value1>, <value2>)
ON DUPLICATE KEY UPDATE <field2> = <field2> + 1;

Sollte es bei der Ausführung der INSERT-Anweisung zu einem doppelten Eintrag in einer als PRIMARY KEY oder UNIQUE KEY definierten Spalte kommen, dann wendet MySQL die UPDATE-Anweisung auf den Datensatz an, der zu dem doppelten Inhalten führt.