Utilisez l'instruction CASE dans la clause WHERE de SQL pour une comparaison dynamique
L'instruction CASE en SQL fournit une expression conditionnelle qui évalue une série de clauses WHEN et renvoie la valeur correspondante. Cette fonctionnalité peut être utilisée dans la clause WHERE pour effectuer des comparaisons dynamiques basées sur des conditions spécifiques.
Pour obtenir les résultats attendus, l'instruction CASE doit être construite comme suit :
<code class="language-sql">WHERE @locationID = CASE @locationType WHEN 'location' THEN account_location WHEN 'area' THEN xxx_location_area WHEN 'division' THEN xxx_location_division END</code>
La syntaxe ci-dessus garantit que la clause WHERE filtre les données en fonction de la valeur de @locationType. Si @locationType est « location », l’expression de la clause WHERE est évaluée comme @locationID = account_location. Si @locationType est « area », la clause WHERE est évaluée à @locationID = xxx_location_area, et ainsi de suite.
En utilisant l'instruction CASE de cette manière, vous évitez d'avoir à vérifier explicitement chaque condition dans la clause WHERE et vous assurez que la comparaison appropriée est effectuée en fonction de la valeur @locationType fournie.
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!