Условная агрегация – выполнение агрегирующей функции при определенных условиях (на определенных данных).
Оператор CASE
Оператор CASE
служит для обработки и выполнения определенных условий
CASE [ expression]
WHEN condition_1 THEN result_1
WHEN condition_2 THEN result_2
...
WHEN condition_n THEN result_n
ELSE result
END
Принцип работы оператора CASE
заключается в условном выполнении операций на основе заданных условий. Он позволяет проверять значение выражения и выполнять различные действия в зависимости от соответствия условиям.
Основные операторы, используемые в операторе CASE
, включают:
-
WHEN
: определяет условие, которое должно быть выполнено. -
THEN
: указывает действие, которое будет выполнено, если условие в оператореWHEN
истинно. -
ELSE
: опциональный оператор, который указывает действие, которое будет выполнено, если ни одно из условий в операторахWHEN
не истинно. -
END
: обозначает конец оператораCASE
.
Особенности использования CASE
-
Условия
WHEN
–THEN
выполняются в порядке приоритета написания. После первого совпадения остальные ветки уже не выполняются. -
Если условие не примет
TRUE
, то операторCASE
вернет значение предложенияELSE
. -
Если предложение
ELSE
опущено и условие не приметTRUE
, то операторCASE
вернетNULL
. -
Оператор
CASE
может иметь до 255 сравнений. Каждое предложениеWHEN … THEN
рассматривает 2 сравнения.
Применение CASE
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.