CASE

    Логические функции

    Синтаксис

    Вариант 1:

    CASE expression
        WHEN value_1 THEN result_1
        [ WHEN value_2 THEN result_2
          ... ]
        ELSE default_result
    END
    

    Вариант 2:

    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],
        "BY", "Белоруссия",
        "KZ", "Казахстан",
        "RU", "Россия",
        "TR", "Турция",
        "UZ", "Узбекистан",
        "Другая страна"
    )
    
    CASE [country]
        WHEN "BY" THEN "Белоруссия"
        WHEN "KZ" THEN "Казахстан"
        WHEN "RU" THEN "Россия"
        WHEN "TR" THEN "Турция"
        WHEN "UZ" THEN "Узбекистан"
        ELSE "Другая страна"
    END
    

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

    Материализованный датасет, ClickHouse 1.1, Microsoft SQL Server 2017 (14.0), MySQL 5.6, PostgreSQL 9.3