CASE

Синтаксис

CASE expression
            WHEN value_1 THEN result_1
            [ WHEN value_2 THEN result_2
              ... ]
            ELSE default_result
        END
        
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 .
unit case_function case_statement
's' 1 1
'm' 60 60
'h' 3600 3600

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

ClickHouse 21.8, Файлы, Google Sheets, Microsoft SQL Server 2017 (14.0), MySQL 5.7, Oracle Database 12c (12.1), PostgreSQL 9.3, Trino, Яндекс Документы, YDB.

Предыдущая
Следующая