Maison >base de données >tutoriel mysql >Comment mettre à jour en masse des entrées MySQL avec des valeurs spécifiques à l'aide de CASE ?
Mise à jour en masse des entrées MySQL avec CASE pour de nouvelles valeurs
Dans MySQL, la mise à jour d'une entrée à l'aide de l'expression CASE vous permet d'attribuer une valeur différente à une colonne basée sur une condition spécifique. Pour corriger la requête fournie, supprimez la virgule après le mot-clé set et formatez l'expression CASE comme suit :
UPDATE ae44 SET price = CASE WHEN ID = 'AT259793380' THEN '500' WHEN ID = 'AT271729590' THEN '600' WHEN ID = 'AT275981020' THEN '700' END
Cette requête mettra à jour les prix correspondants pour les ID spécifiés. Cependant, il est important de noter qu'il définira également la valeur du prix sur NULL pour tous les enregistrements dont les ID ne sont pas inclus dans l'expression CASE.
Si vous souhaitez mettre à jour uniquement les prix des ID spécifiques de votre list, utilisez une requête comme celle-ci :
UPDATE ae44 JOIN ( SELECT 'AT259793380' AS oldval, '500' AS newval UNION ALL SELECT 'AT271729590' AS oldval, '600' AS newval UNION ALL SELECT 'AT275981020' AS oldval, '700' AS newval ) q ON ae44.id = q.oldval SET price = q.newval
Cette requête utilise une sous-requête pour créer une table avec les anciennes et les nouvelles valeurs des ID, puis elle joint cette table avec la ae44 et effectue la mise à jour uniquement sur les enregistrements correspondants.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!