case
식
적용 대상: Databricks SQL Databricks Runtime
expr
과 같은 첫 번째 optN
에 대해 resN
을 반환하거나 일치하는 항목이 없으면 def
를 반환합니다.
true로 평가되는 첫 번째 condN
의 resN
을 반환하거나, 해당 항목이 없는 경우 def
를 반환합니다.
구문
CASE expr {WHEN opt1 THEN res1} [...] [ELSE def] END
CASE {WHEN cond1 THEN res1} [...] [ELSE def] END
인수
expr
: 비교가 정의된 임의 식입니다.optN
:expr
및 다른 모든optN
과 최소 공통 형식을 공유하는 식입니다.resN
: 다른 모든resN
및def
와 최소 공통 형식을 공유하는 식입니다.def
: 모든resN
과 최소 공통 형식을 공유하는 임의 식입니다.condN
: BOOLEAN 식입니다.
반품
결과 형식은 resN
과 def
의 최소 공통 형식과 일치합니다.
def
가 생략된 경우 기본값은 NULL입니다.
조건은 순서대로 평가되며, 결과를 생성하는 resN
또는 def
만 실행됩니다.
예제
> SELECT CASE WHEN 1 > 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END;
1.0
> SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END;
2.0
> SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 < 0 THEN 2.0 END;
NULL
> SELECT CASE 3 WHEN 1 THEN 'A' WHEN 2 THEN 'B' WHEN 3 THEN 'C' END;
C