Что такое Oracle эквивалент функции ISNULL() SQL Server?
в SQL Server мы можем ввести IsNull()
чтобы определить, является ли поле null. Есть ли эквивалентная функция в PL / SQL?
4 ответа:
coalesce
поддерживается как в Oracle, так и в SQL Server и выполняет по существу ту же функцию, что иnvl
иisnull
. (Есть некоторые важные различия,coalesce
может принимать произвольное число аргументов и возвращает первый ненулевой. Возвращаемый тип дляisnull
соответствует типу первого аргумента, что не верно дляcoalesce
, по крайней мере на SQL Server.)
вместо
ISNULL()
используйтеNVL()
.T-SQL:
SELECT ISNULL(SomeNullableField, 'If null, this value') FROM SomeTable
PL / SQL:
SELECT NVL(SomeNullableField, 'If null, this value') FROM SomeTable
использовать
NVL2
Как ниже, если вы хотите вернуть другое значение из тегаfield_to_check
:NVL2( field_to_check, value_if_NOT_null, value_if_null )
использование: ORACLE / PLSQL: ФУНКЦИЯ NVL2