Разница между функциями ВЫРАЗИТЬ и ЕСТЬNULL при работе с составными типами данных заключается в их назначении:
- ВЫРАЗИТЬ предназначена для полей, имеющих составной тип, и позволяет привести значения составного поля к определённому типу. 1 При этом все значения других типов становятся равны NULL. 1
- ЕСТЬNULL проверяет значение в записи и, если оно равно NULL, позволяет заменить на своё значение. 4 Если первый параметр функции ЕСТЬNULL не равен NULL, то возвращается он, а если равен NULL — второй параметр. 1
Таким образом, для замены NULL лучше использовать ЕСТЬNULL, а ВЫРАЗИТЬ применять для преобразования составных типов с заменой NULL как побочным эффектом. 3