Эти два выражения функционально эквивалентны.
Выражение TRIM(NVL(col1,''))
:
- , когда
col1
содержит пробелы, NVL
возвращает его без изменений, а внешние trim
удаляют пробелы - , когда
col1
is NULL
, NVL
возвращает ''
, что trim
возвращает без изменений
Выражение NVL(TRIM(col1),'')
:
- , когда
col1
содержит пробелы,TRIM
удаляет их, а outr NVL
оставляет результат без изменений - , когда
col1
равно NULL
, TRIM
возвращает NULL
, что NVL
превращается в ''