CASE(Entity SQL)
Boolean 식 집합을 계산하여 결과를 결정합니다.
CASE
WHEN Boolean_expression THEN result_expression
[ ...n ]
[
ELSE else_result_expression
]
END
인수
- n
여러 WHEN when_expression THEN result_expression 절이나 여러 WHEN Boolean_expression THEN result_expression 절을 사용할 수 있음을 나타내는 자리 표시자입니다.
- THEN result_expression
Boolean_expression이 true인 경우에 반환되는 식입니다. result expression은 유효한 식입니다.
- ELSE else_result_expression
true로 계산된 비교 연산이 없는 경우 반환되는 식입니다. 이 인수가 생략되고 true로 계산된 비교 연산이 없는 경우 CASE는 null을 반환합니다. else_result_expression은 유효한 식입니다. else_result_expression과 result_expression의 데이터 형식은 동일하거나 암시적으로 변환되어야 합니다.
- WHEN Boolean_expression
검색된 CASE 형식을 사용할 때 계산되는 Boolean 식입니다. Boolean_expression은 유효한 Boolean 식입니다.
반환 값
result_expression과 선택적 요소인 else_result_expression의 형식 집합에서 우선 순위가 가장 높은 형식을 반환합니다.
설명
Entity SQL CASE 식은 Transact-SQL CASE 식과 비슷합니다. CASE 식을 사용하면 적절한 결과를 생성하는 식을 결정하는 일련의 조건부 테스트를 만들 수 있습니다. 이러한 CASE 식 형식은 하나 이상으로 구성된 일련의 Boolean 식에 적용되어 올바른 결과 식을 결정합니다.
CASE 함수는 지정된 순서대로 각 WHEN 절에 대해 Boolean_expression을 계산한 다음 true로 계산된 첫 번째 Boolean_expression의 result_expression을 반환합니다. true로 계산된 Boolean_expression이 없으면 ELSE 절이 지정된 경우 데이터베이스 엔진에서 else_result_expression을 반환하고 ELSE 절이 지정되지 않은 경우 null 값을 반환합니다.
CASE 문은 multiset을 반환할 수 없습니다.
예제
다음 Entity SQL 쿼리에서는 결과를 결정하기 위해 CASE 식을 사용하여 일련의 Boolean 식을 계산합니다. 쿼리는 AdventureWorks Sales 모델을 기반으로 합니다. 이 쿼리를 컴파일하고 실행하려면 다음 단계를 수행하십시오.
방법: PrimitiveType 결과를 반환하는 쿼리 실행(EntityClient)의 절차를 수행합니다.
다음 쿼리를
ExecutePrimitiveTypeQuery
메서드에 인수로 전달합니다.
CASE WHEN AVG({25,12,11}) < 100 THEN TRUE ELSE FALSE END
출력되는 결과는 다음과 같습니다.
Value: True
참고 항목
참조
ELSE(Entity SQL)
WHEN(Entity SQL)
THEN(Entity SQL)
SELECT(Entity SQL)