Продвинутые SQL-запросы
2026-02-26 18:18 Diff

Условная агрегация – выполнение агрегирующей функции при определенных условиях (на определенных данных).

Оператор CASE

Оператор CASE служит для обработки и выполнения определенных условий

Принцип работы оператора 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

Рекомендуемые программы