Вход
Регистрация

Как эффективнее обработать в расчетах пустые значения?

Проблема: при использовании внешнего левого соединения образуется множество пустых значений в полях с фактами,
с использованием скользящего окна, количество полей с фактами увеличилось до 50 штук (то есть не мало)
формулы сложения через знак + или функцию Sum не работают, т.к. если встречаются пустые значения, то итоговый результат тоже пусто
хотя я лично считаю такое поведение программы не адекватным, ну да и ладно....
как я понимаю, разработчики предлагают в таких случаях использовать замену пустот на ноль
или использовать функцию NVL

лично я думаю, что это муторно и не правильно = использовать замену (плодить еще 50 колонок с замененными данными)
и скорее склоняюсь, что нужно использовать функцию NVL

но у меня вопрос:
а каким способом получение результата будет более производительным?
То есть что Дедуктору легче сделать (на что он потратит меньше памяти и процессора) ?
1. на генерирование новых полей с фактами (при замене пустот на ноль), последующее удаление старых и затем расчет калькулятором (в калькуляторе простое сложение)
2. на использование в калькуляторе возле каждого поля проверочной функции NVL ?

А может есть еще другой вариант? более эффективный