단순 CASE
는 단일 입력 표현식의 값을 기반으로 결과를 반환하거나, 비교 값이 일치하지 않는 경우 기본 결과를 반환합니다.
참고: IF
사용 예시
결제 코드를 직관적인 이름으로 바꿉니다.
CASE Payment Type WHEN "CC" THEN "Credit Card" WHEN "DC" THEN "Debit Card" WHEN "GC" THEN "Gift Card" WHEN "CA" THEN "Cash" ELSE "Other" END
구문
CASE input_expression WHEN expression_to_match THEN result [WHEN expression_to_match THEN result] [...] [ELSE else_result] END
매개변수
input_expression
: 유효한 필드 또는 표현식- [
expression_to_match
- 유효한 필드 또는 표현식WHEN
절은input_expression
를input_expression
와 비교하여 두 값이 같으면 true를, 같지 않으면 false를 반환합니다.]{#when-conditions} result
: 유효한 필드 또는 표현식 각WHEN
절에는 일치하는THEN
절이 있어야 합니다. 이 절은 해당 조건이 참인 경우 반환할 결과를 지정합니다.WHEN
절이 여러 개 있는 경우CASE
문은 첫 번째 참인 절에 대한 결과를 반환합니다.else_result
(선택사항): 유효한 필드 또는 표현식ELSE
else_result 절은CASE
문의 기본 결과를 지정합니다.WHEN
절 중 참인 절이 없으면 이 절이 반환됩니다.CASE
문에ELSE
절이 없고WHEN
절 중에 참인 절이 없으면CASE
문에NULL
이 반환됩니다.
간단한 CASE
작동 방식
간단한 CASE
문은 다음 요소로 구성됩니다.
CASE
키워드: 이 뒤에 입력 표현식이 나옵니다.WHEN
:input_expression
를 비교할 값입니다. 값이input_expression
와 같으면 이 절은 참입니다. 하나의CASE
문에 여러 개의WHEN
절이 있을 수 있습니다.THEN
:WHEN
절의 조건이 참인 경우 반환되는 결과입니다.CASE
문에는 각WHEN
절에 대한THEN
절이 하나 있어야 합니다.ELSE
: 선택사항입니다.WHEN
절 조건 중 참인 조건이 없으면CASE
는ELSE
절로 값을 반환하며,ELSE
절을 지정하지 않았다면NULL
을 반환합니다.END
키워드
CASE
는 연속된 각 WHEN
절을 평가하고 조건이 참인 첫 번째 결과를 반환합니다. 나머지 WHEN
절과 ELSE
결과는 평가되지 않습니다. 모든 WHEN
조건이 거짓이거나 NULL
이면 CASE
는 ELSE
결과를 반환하고, ELSE
절이 없는 경우 NULL
을 반환합니다.
예시
프리미엄 고객을 위해 맞춤설정된 링크를 제공합니다.
CASE Premium Status WHEN "Platinum" THEN CONCAT(Site URL, "platinum_welcome.html") WHEN "Gold" THEN CONCAT(Site URL, "gold_welcome.html") WHEN "Silver" THEN CONCAT(Site URL, "silver_welcome.html") ELSE CONCAT(Site URL, "welcome.html") END