CASE (Entity SQL)
Valuta un set di espressioni Boolean per determinare il risultato.
CASE
WHEN Boolean_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
]
END
Argomenti
- n
Segnaposto che indica la possibilità di utilizzare più clausole WHEN when_expression THEN result_expression o WHEN Boolean_expression THEN result_expression.
- THEN result_expression
È l'espressione restituita quando Boolean_expression restituisce true. result expression è qualsiasi espressione valida.
- ELSE else_result_expression
Espressione restituita se nessuna operazione di confronto restituisce true. Se questo argomento viene omesso e nessuna operazione di confronto restituisce true, CASE restituisce null. else_result_expression è qualsiasi espressione valida. A else_result_expression e a ogni occorrenza di result_expression deve essere associato lo stesso tipo di dati o un tipo di dati convertibile in modo implicito.
- WHEN Boolean_expression
È l'espressione Boolean valutata quando viene utilizzato il formato CASE cercato. Boolean_expression è una qualsiasi espressione Boolean valida.
Valore restituito
Restituisce il tipo con precedenza maggiore dal set di tipi in result_expression e nell'oggetto facoltativo else_result_expression.
Osservazioni
L'espressione case Entity SQL è simile all'espressione case Transact-SQL . È possibile utilizzare l'espressione case per eseguire una serie di test condizionali per determinare quale espressione restituirà il risultato appropriato. Questa forma dell'espressione case si applica a una serie di una o più espressioni Boolean per determinare l'espressione risultante corretta.
La funzione CASE restituisce Boolean_expression per ogni clausola WHEN nell'ordine specificato e restituisce result_expression del primo oggetto Boolean_expression che restituisce true. Se nessun oggetto Boolean_expression restituisce true, il motore di database restituisce else_result_expression se è stata specificata una clausola ELSE. In caso contrario, viene restituito un valore null.
Un'istruzione CASE non può restituire un multiset.
Esempio
Nella query Entity SQL seguente viene utilizzata l'espressione CASE per valutare un set di espressioni Boolean per determinare il risultato. La query è basata sul modello Sales di AdventureWorks. Per compilare ed eseguire questa query, effettuare le operazioni seguenti:
Seguire la procedura indicata in Procedura: eseguire una query che restituisce risultati PrimitiveType (EntityClient).
Passare la query seguente come argomento al metodo
ExecutePrimitiveTypeQuery
:
CASE WHEN AVG({@score1,@score2,@score3}) < @total THEN TRUE ELSE FALSE END
Vedere anche
Riferimento
ELSE (Entity SQL)
WHEN (Entity SQL)
THEN (Entity SQL)
SELECT (Entity SQL)