В SQL Server мы можем ввести IsNull()
, чтобы определить, является ли поле нулевым. Есть ли эквивалентная функция в PL/SQL?Что такое эквивалент Oracle функции IsNull() SQL Server?
ответ
coalesce
поддерживается как в Oracle и SQL Server и служит по существу ту же функцию, что и nvl
isnull
. (Есть некоторые важные отличия, coalesce
может принимать произвольное количество аргументов и возвращает первый ненулевой. Тип возврата для isnull
соответствует типу первого аргумента, что неверно для coalesce
, по крайней мере, на SQL Server .)
Вы можете использовать условие if x is not null then...
. Это не функция. Также есть функция NVL()
, хороший пример использования здесь: NVL function ref.
Вместо 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 FUNCTION
- 1. C# эквивалент функции IsNull() в SQL Server
- 2. Что такое эквивалент функции LAST_DAY() Oracle в SQL Server 2008?
- 3. Что такое эквивалент SQL Server этого запроса Oracle?
- 4. Что такое «ПАРАЛЛЕЛЬНЫЙ» эквивалент в SQL Server
- 5. Что такое эквивалент SQL Server APPLY в Oracle?
- 6. Что такое эквивалент SQL Server для Oracle systimestamp?
- 7. Что такое эквивалент Oracle функции Informix `interval`?
- 8. Что такое эквивалент C# функции Oracle PL/SQL COALESCE?
- 9. Что такое эквивалент MySQL для функции запуска SQL Server UPDATE()?
- 10. Что такое эквивалент «объект» в SQL Server?
- 11. Что такое эквивалент NoSQL SQL Server
- 12. Что такое эквивалент SQL Server INET_ATON
- 13. Что такое эквивалент Oracle System.Data.Linq.DataContext?
- 14. Что такое эквивалент сервера Sql для Oracle DBMS_ASSERT?
- 15. Что такое C# эквивалент функции SQL STR?
- 16. SQL Server эквивалент Oracle USER
- 17. SQL Server Эквивалент Oracle dbms_job.submit
- 18. Oracle эквивалент SQL Server SCHEMA
- 19. эквивалент SQL Server в Oracle
- 20. Oracle имеет OWA. Что такое эквивалент PostgresSQL?
- 21. Что такое эквивалент Oracle to_char в синтаксисе SQL SQL AS400?
- 22. Что такое эквивалент Oracle SQL SET SET NOCOUNT ON?
- 23. Что такое эквивалент Oracle SQL SETEX NOEXEC или NOPARSE?
- 24. Что делает IsNull в процедуре SQL Server?
- 25. Oracle эквивалент SQL Server/Sybase DateDiff
- 26. Что такое SQL-эквивалент COUNTIF?
- 27. Что такое SQL Server?
- 28. SQL Server эквивалент Oracle Wallet Manager
- 29. Что такое MSSQL-эквивалент функции паролей MySQL?
- 30. Что такое эквивалент функции T-SQL ISNUMERIC в HANA Sqlscript?
+1: 'COALESCE' является ANSI, поддерживается Postgres, MySQL ... Единственное предостережение в том, что он не обязательно выполняется так быстро, как собственный синтаксис. –
+1 для «COALESCE», который имеет одно важное преимущество над «NVL»: он выполняет краткую оценку, тогда как «NVL» всегда оценивает оба параметра. Сравните 'COALESCE (1, my_expensive_function)' с 'NVL (1, my_expensive_function)'. –