НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
23 of 150 menu

Функция NULLIF

Функция NULLIF используется для сравнения двух значений. Если значения равны, функция возвращает NULL, в противном случае возвращается первое значение. Часто применяется для предотвращения деления на ноль и для управления логикой обработки данных.

Синтаксис

SELECT NULLIF(expression_1, expression_2) FROM table_name

Таблицы для примеров

employees
id name salary bonus
1 Ivan 40000 0
2 Petr 45000 5000
3 Sergey 42000 0
4 Olga 55000 7000
5 Andrey 60000 0

Пример

Давайте используем функцию NULLIF для преобразования значения бонуса в NULL, если его значение равно нулю:

SELECT name, bonus, NULLIF(bonus, 0) AS bonus_value FROM employees ORDER BY id

Результат выполнения кода:

name bonus bonus_value
Ivan 0 NULL
Petr 5000 5000
Sergey 0 NULL
Olga 7000 7000
Andrey 0 NULL

Пример

Давайте используем NULLIF для предотвращения деления на ноль при вычислении отношения зарплаты к бонусу:

SELECT name, salary / NULLIF(bonus, 0.0) AS salary_ratio FROM employees ORDER BY id

Результат выполнения кода:

name salary_ratio
Ivan NULL
Petr 9
Sergey NULL
Olga 7.8571
Andrey NULL

Смотрите также

  • функцию IFNULL,
    которая заменяет NULL на значение
  • функцию COALESCE,
    которая выбирает первое не-NULL
  • команду WHERE,
    которая отбирает строки по условию
  • выражение CASE,
    которое задаёт ветвление логики
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить