Partager via


CASE (Entity SQL)

Évalue un ensemble d’expressions Boolean pour déterminer le résultat.

Syntaxe

CASE
     WHEN Boolean_expression THEN result_expression
    [ ...n ]
     [
    ELSE else_result_expression
     ]
END

Les arguments

n Espace réservé qui indique que plusieurs clauses WHEN Boolean_expression THEN result_expression peuvent être utilisées.

THEN result_expression Est l’expression retournée lorsqu’elle Boolean_expression est évaluée à true. result expression est toute expression valide.

ELSE else_result_expression Est l’expression retournée si aucune opération de comparaison n’est évaluée à true. Si cet argument est omis trueet qu’aucune opération de comparaison n’est évaluée, CASE retourne null. else_result_expression est toute expression valide. Les types de données et les result_expression types de else_result_expression données doivent être identiques ou doivent être une conversion implicite.

WHEN Boolean_expression Est l’expression Boolean évaluée lorsque le format CASE recherché est utilisé. Boolean_expression est toute expression valide Boolean .

Valeur de retour

Retourne le type de priorité le plus élevé à partir de l’ensemble de types dans l’ensemble de types dans le result_expression et le type facultatif else_result_expression.

Remarques

L’expression de cas Entity SQL ressemble à l’expression de cas Transact-SQL. Vous utilisez l’expression de cas pour effectuer une série de tests conditionnels pour déterminer quelle expression génère le résultat approprié. Cette forme de l’expression de cas s’applique à une série d’une ou Boolean plusieurs expressions pour déterminer l’expression résultante correcte.

La fonction CASE évalue Boolean_expression chaque clause WHEN dans l’ordre spécifié et retourne result_expression le premier qui prend truela valeur Boolean_expression . Les expressions restantes ne sont pas évaluées. Si aucune valeur n’est Boolean_expressiontrueévaluée, le moteur de base de données retourne la else_result_expression valeur si une clause ELSE est spécifiée ou une valeur Null si aucune clause ELSE n’est spécifiée.

Une instruction CASE ne peut pas retourner un multiset.

Exemple :

La requête Entity SQL suivante utilise l’expression CASE pour évaluer un ensemble d’expressions afin de Boolean déterminer le résultat. La requête est basée sur adventureWorks Sales Model. Pour compiler et exécuter cette requête, procédez comme suit :

  1. Suivez la procédure dans How to : Execute a Query that Returns PrimitiveType Results.

  2. Transmettez la requête suivante en tant qu’argument à la ExecutePrimitiveTypeQuery méthode :

CASE WHEN AVG({@score1,@score2,@score3}) < @total THEN TRUE ELSE FALSE END

Voir aussi