Поделиться через


Функция ER CASE

Функция CASE оценивает значение указанного выражения по сравнению с указанными альтернативными вариантами и возвращает результат первого варианта, равного значению указанного выражения. В противном случае возвращает дополнительный результат по умолчанию, если результат по умолчанию указан в качестве последнего аргумента вызванной функции, которой не предшествует вариант. Возвращаемое значение может быть значением любого из поддерживаемых типов данных.

Синтаксис

CASE (expression, option 1, result 1[, option 2, result 2, …, option N, result N, default result])

Аргументы

expression: Примитивный тип данных (логический, числовой или текстовый)

Допустимое выражение, возвращающее значение примитивного типа данных.

option 1: Примитивный тип данных (логический, числовой или текстовый)

Допустимое выражение, возвращающее значение того же примитивного типа данных, что и аргумент expression вызываемой функции. Этот аргумент обязательный.

result 1: Любой из поддерживаемых типов данных

Возвращаемый результат, соответствующий предыдущему параметру. Этот аргумент обязательный.

option N: Примитивный тип данных (логический, числовой или текстовый)

Допустимое выражение, возвращающее значение того же примитивного типа данных, что и аргумент expression вызываемой функции. Это необязательный аргумент.

result N: Любой из поддерживаемых типов данных

Возвращаемый результат, соответствующий предыдущему параметру. Это необязательный аргумент.

default result: Любой из поддерживаемых типов данных

Результат, который должен быть возвращен, если нет совпадения. Это необязательный аргумент.

Возвращаемые значения

Любой из поддерживаемых типов данных

Полученное значение любого из поддерживаемых типов данных.

Примечания по использованию

Исключение выдается во время выполнения, если нет совпадения и не задан дополнительный результат по умолчанию.

Все результаты должны быть указаны с помощью одного и того же типа данных. Исключение выдается во время разработки, если типы данных настроенных результатов не совпадают.

Если значение первого результата и значение n-го результата являются значениями типа данных Контейнер (запись) или Список записей, то в результате есть только поля, которые существуют в обоих значениях.

Пример

CASE( DATETIMEFORMAT( NOW(), "MM"), "10", "WINTER", "11", "WINTER", "12", "WINTER", "") возвращает строку "WINTER", если текущая дата сеанса приложения приходится на период с октября по декабрь. В противном случае она возвращает пустую строку.

Дополнительные ресурсы

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