Maison >base de données >tutoriel mysql >Comment puis-je optimiser les mises à jour de SQL Server à l'aide des instructions CASE et des clauses WHERE ?

Comment puis-je optimiser les mises à jour de SQL Server à l'aide des instructions CASE et des clauses WHERE ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-26 17:04:15185parcourir

How Can I Optimize SQL Server Updates Using CASE Statements and WHERE Clauses?

Mise à jour des enregistrements sélectifs avec l'instruction CASE dans SQL Server 2005

L'instruction SQL donnée utilise une instruction CASE pour mettre à jour des enregistrements spécifiques en fonction de leur LASTNAME valeurs. Cependant, un problème découle du fait que la condition ELSE englobe toutes les lignes, conduisant à un traitement inutile. Pour résoudre ce problème, une solution optimisée est proposée.

Pour minimiser l'analyse inutile, on peut incorporer une clause WHERE dans l'instruction comme suit :

UPDATE dbo.TestStudents
SET LASTNAME = CASE
    WHEN LASTNAME = 'AAA' THEN 'BBB'
    WHEN LASTNAME = 'CCC' THEN 'DDD'
    WHEN LASTNAME = 'EEE' THEN 'FFF'
    ELSE LASTNAME
END
WHERE LASTNAME IN ('AAA', 'CCC', 'EEE');

Dans ce code révisé, le WHERE La clause limite l'opération de mise à jour uniquement aux valeurs LASTNAME qui vous intéressent (« AAA », « CCC » et « EEE »). Cela garantit que les lignes non affectées restent inchangées tandis que les mises à jour prévues sont effectuées efficacement.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn