CASE

Синтаксис

CASE expression    WHEN value_1 THEN result_1    [ WHEN value_2 THEN result_2      ... ]    ELSE default_resultEND
CASE(    expression,    value_1, result_1,  [ value_2, result_2,    ... ]    default_result)

Описание

Сравнивает выражение expression с последовательностью значений value_1, value_2, ... и возвращает результат для первого совпадения.
Если совпадений не найдено, то возвращает default_result.

Типы аргументов:

  • expressionЛюбой
  • value_1Любой
  • result_1Любой
  • value_2Любой
  • result_2Любой
  • default_resultЛюбой

Возвращаемый тип: Совпадает с типом аргументов (result_1, result_2, default_result)

Примечание

Тип аргументов (result_1, result_2, default_result) должен совпадать.

Примеры

CASE (    [country],    "AO", "Angola",    "AU", "Australia",    "BY", "Belarus",    "CA", "Canada",    "TT", "Trinidad and Tobago",    "Other Country")
CASE [country]    WHEN "AO" THEN "Angola"    WHEN "AU" THEN "Australia"    WHEN "BY" THEN "Belarus"    WHEN "CA" THEN "Canada"    WHEN "TT" THEN "Trinidad and Tobago"    ELSE "Other Country"END
Пример с таблицей данных

Формулы:

  • unit: [unit] ;
  • case_function: CASE([unit], "s", 1, "m", 60, "h", 3600, 0) ;
  • case_statement: CASE [unit] WHEN "s" THEN 1 WHEN "m" THEN 60 WHEN "h" THEN 3600 ELSE 0 END .
unitcase_functioncase_statement
's'11
'm'6060
'h'36003600

Поддержка источников данных

ClickHouse 21.8, Microsoft SQL Server 2017 (14.0), MySQL 5.7, Oracle Database 12c (12.1), PostgreSQL 9.3, YDB.

Previous
Next