Opérateur OR non pris en charge dans l'expression CASE dans SQL Server : solutions alternatives
L'opérateur OR n'est pas pris en charge dans la clause WHEN d'un CASE expression dans SQL Server. Cela peut présenter des défis lorsque vous devez évaluer plusieurs conditions à l’aide de la logique OU. Pour surmonter cette limitation, vous pouvez utiliser des approches alternatives :
Clauses WHEN séparées :
Une option consiste à utiliser des clauses WHEN distinctes pour chaque condition. Cette approche nécessite plusieurs conditions dans l'instruction CASE. Par exemple :
CASE ebv.db_no WHEN 22978 THEN 'WECS 9500' WHEN 23218 THEN 'WECS 9500' WHEN 23219 THEN 'WECS 9500' ELSE 'WECS 9520' END as wecs_system
Opérateur IN :
Une autre alternative consiste à utiliser l'opérateur IN. L'opérateur IN vous permet de spécifier une liste de valeurs à comparer avec l'expression d'évaluation. Par exemple :
CASE WHEN ebv.db_no IN (22978, 23218, 23219) THEN 'WECS 9500' ELSE 'WECS 9520' END as wecs_system
En utilisant l'une ou l'autre de ces approches, vous pouvez gérer la logique OR dans les expressions CASE même si l'opérateur OR lui-même n'est pas pris en charge. Choisissez l'approche qui correspond le mieux aux exigences de votre requête spécifique.
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!