Kurztipp - Mehrere Datensätze aktualisieren (MySQL)

From macwrench
Jump to navigation Jump to search

Um ressourcenschonend und möglichst performant ein bestimmtes Feld mehrerer Datensätze einer MySQL-Tabelle zu ändern, ist folgende Syntax sehr hilfreich. Dabei ist die ELSE Klausel am Ende auf keinen Fall zu vergessen, da ansonsten alle anderen (nicht von den WHEN ... THEN ... Klauseln betroffenen) Datensätze einen leeren Wert im Feld myColumn bekommen:

UPDATE myTable SET myColumn = CASE id
   WHEN value1 THEN data1
   WHEN value2 THEN data2
   ...
   ELSE myColumn 
END;

Siehe auch