Mysql
 sql >> Base de données >  >> RDS >> Mysql

Plusieurs clauses set et where dans la requête Update dans mysql

Vous pouvez utiliser INSERT INTO .. ON DUPLICATE KEY UPDATE pour mettre à jour plusieurs lignes avec des valeurs différentes.

Vous avez besoin d'un index unique (comme une clé primaire) pour faire fonctionner la partie "clé en double"

Exemple :

INSERT INTO table (a,b,c) VALUES (1,2,3),(4,5,6)
  ON DUPLICATE KEY UPDATE b = VALUES(b), c = VALUES(c);

-- VALUES(x) points back to the value you gave for field x
-- so for b it is 2 and 5, for c it is 3 and 6 for rows 1 and 4 respectively (if you assume that a is your unique key field)

Si vous avez un cas particulier, je peux vous donner la requête exacte.