Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Massenaktualisierung von mysql mit where-Anweisung

Die einfachste Lösung in Ihrem Fall ist die Verwendung von ON DUPLICATE KEY UPDATE Konstruktion. Es funktioniert sehr schnell und erledigt die Arbeit auf einfache Weise.

INSERT into `table` (id, fruit)
    VALUES (1, 'apple'), (2, 'orange'), (3, 'peach')
    ON DUPLICATE KEY UPDATE fruit = VALUES(fruit);

oder um CASE zu verwenden Konstruktion

UPDATE table
SET column2 = (CASE column1 WHEN 1 THEN 'val1'
                 WHEN 2 THEN 'val2'
                 WHEN 3 THEN 'val3'
         END)
WHERE column1 IN(1, 2 ,3);