CASO (Entity SQL)
Avalia um conjunto de expressões de Boolean
para determinar o resultado.
Sintaxe
CASE
WHEN Boolean_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
]
END
Argumentos
n
É um espaço reservado que indica que várias cláusulas WHEN Boolean_expression
THEN result_expression
podem ser usadas.
THEN result_expression
é a expressão retornada quando Boolean_expression
é avaliado como true
. result expression
é qualquer expressão válida.
ELSE else_result_expression
é a expressão retornada se nenhuma operação de comparação é avaliada como true
. Se esse argumento é omitido e nenhuma operação de comparação avalia a true
, os CASOS retornam o zero. else_result_expression
é qualquer expressão válida. Os tipos de dados de else_result_expression
e qualquer result_expression
devem ser os mesmos ou devem ser uma conversão implícita.
WHEN Boolean_expression
é a expressão Boolean
avaliada quando o formato CASE pesquisado é usado. Boolean_expression
é qualquer expressão válida de Boolean
.
Valor Retornado
Retorna o tipo mais alto de precedência de conjunto de tipos em result_expression
e else_result_expression
opcional.
Comentários
A expressão de maiúsculas e minúsculas do Entity SQL se assemelha à expressão de maiúsculas e minúsculas do Transact-SQL. Você usa a expressão dos casos para fazer uma série de teste condicional para determinar qual expressão renderá o resultado apropriado. Este formulário da expressão dos casos se aplica a uma série de uma ou mais expressões de Boolean
para determinar a expressão resultante correta.
A função de CASOS avaliar Boolean_expression
para o QUANDO cada cláusula na ordem especificada, e retornar result_expression
de primeiro Boolean_expression
que avalia para true
. As expressões restantes não são avaliadas. Se nenhum Boolean_expression
avalia a true
, o mecanismo de base de dados retorna else_result_expression
se uma cláusula OUTRA for especificada, ou um valor nulo se nenhuma cláusula OUTRA é especificado.
Uma declaração de CASOS não pode retornar um multiset.
Exemplo
A seguinte consulta SQL Entity usa a expressão de CASOS para avaliar um conjunto de expressões de Boolean
para determinar o resultado. A consulta é baseada no modelo de vendas AdventureWorks. Para compilar e executar essa consulta, siga estas etapas:
Siga o procedimento em Como executar uma consulta que retorna os resultados de PrimitiveType.
Passe a consulta a seguir como um argumento para o método
ExecutePrimitiveTypeQuery
:
CASE WHEN AVG({@score1,@score2,@score3}) < @total THEN TRUE ELSE FALSE END