NVL в Oracle SQL. Введение
NVL — это одна из самых часто используемых функций в Oracle SQL. Она позволяет подставить значение по умолчанию вместо NULL, что особенно важно при вычислениях, фильтрации и форматировании вывода.
NVL делает код надёжнее и избавляет от ошибок, связанных с тем, что NULL «гасит» арифметику и сравнения.
🔤 Написание
Если
выражениенеNULL, возвращается оно самоЕсли
NULL— подставляется второе значение
🔄 Где используется NVL
Подстановка значений в SELECT
Обработка возможных
NULLв вычисленияхОтображение данных с «заполнителями»
Поддержка стабильной бизнес-логики
Устранение ошибок при агрегации
🧪 10 Примеров использования NVL
1️⃣ Заменить NULL на 0
2️⃣ Заменить NULL на текст
3️⃣ NVL в арифметике
4️⃣ Использование в ORDER BY
5️⃣ Форматирование вывода
6️⃣ NVL внутри CASE
7️⃣ NVL с датами
8️⃣ Сравнение с NVL (без NULL-проблем)
9️⃣ NVL внутри агрегатов
🔟 Замена в подзапросе
🧩 Заключение
Функция NVL делает работу с NULL-значениями в Oracle SQL простой и безопасной. Она помогает избежать неожиданного поведения в логике, арифметике и выводе данных.
💡 Запомни:
Используй
NVL, чтобы избежатьNULLв арифметикеХороша для подстановки текста, чисел и даже дат
Не путай с
NVL2,COALESCE,CASE— у них разное поведениеУпрощает SQL-запросы, особенно при генерации отчётов
🔜 Следующая статья:
NUMBER в Oracle SQL — как задавать числовые типы данных и управлять точностью