Содержание

Функция ISNULL (Transact-SQL) — SQL Server

  • Статья
  • Чтение занимает 3 мин

Применимо к: SQL Server Azure SQL DatabaseУправляемый экземпляр SQL AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)

Заменяет значение NULL указанным замещающим значением.

Соглашения о синтаксисе Transact-SQL

Синтаксис

ISNULL ( check_expression , replacement_value )  

Примечание

Ссылки на описание синтаксиса Transact-SQL для SQL Server 2014 и более ранних версий, см. в статье Документация по предыдущим версиям.

Аргументы

check_expression
Выражение, которое необходимо проверить на равенство значению NULL. Аргумент check_expression может быть любого типа.

replacement_value
Выражение, возвращаемое, если check_expression имеет значение NULL. Аргумент replacement_value должен иметь тип, который может быть неявно преобразован в тип check_expression.

Типы возвращаемых данных

Возвращает тип, совпадающий с типом выражения check_expression. Если в аргументе check_expression предоставлено литеральное значение NULL, возвращает тип данных replacement_value. Если в аргументе check_expression предоставлено литеральное значение NULL, а аргумент replacement_value не задан, возвращает int.

Возвращается значение check_expression, если это выражение не равно NULL. В противном случае возвращается значение replacement_value. Если типы являются разными, то тип replacement_value неявно преобразуется в тип check_expression. Значение replacement_value может усекаться, если значение replacement_value длиннее, чем check_expression.

Примечание

Для возврата первого значения, отличного от NULL, используйте функцию COALESCE (Transact-SQL).

Примеры

A. Использование функции ISNULL с функцией AVG

Следующий пример демонстрирует расчет среднего значения веса всех продуктов. Все записи со значением NULL в столбце

50 таблицы Weight заменяются значением Product.

USE AdventureWorks2012;  
GO  
SELECT AVG(ISNULL(Weight, 50))  
FROM Production.Product;  
GO  

Результирующий набор:

-------------------------- 
59.79  
 
(1 row(s) affected)

Б. Использование функции ISNULL

Следующий пример производит выборку описания, процента скидки, минимального и максимального количества для всех специальных предложений из базы AdventureWorks2012. Если максимальное количество для отдельного специального предложения равно NULL, отображаемое значение MaxQty в результирующем наборе заменяется на 0.00.

USE AdventureWorks2012;  
GO  
SELECT Description, DiscountPct, MinQty, ISNULL(MaxQty, 0.00) AS 'Max Quantity'  
FROM Sales.SpecialOffer;  
GO  

Результирующий набор:

DescriptionDiscountPctMinQtyМаксимальное количество
Без скидки0,0000
Оптовая скидка0,021114
Оптовая скидка0,05154
Оптовая скидка0,10250
Оптовая скидка0,15410
Оптовая скидка0,20610
Mountain-100 Cl0,3500
Sport Helmet Di0,1000
Road-650 Overst0,3000
Mountain Tire S0,5000
Sport Helmet Di0,1500
LL Road Frame S0,3500
Touring-3000 Pr0,1500
Touring-1000 Pr0,2000
Half-Price Peda0,5000
Mountain-500 Si0,4000

(16 row(s) affected)

В.

Проверка значений NULL в предложении WHERE

Не используйте для поиска значений NULL выражение ISNULL, вместо него следует использовать выражение IS NULL. В следующем примере выполняется поиск всех продуктов, имеющих значение NULL в столбце веса. Заметьте, что между словами IS и NULL стоит пробел.

USE AdventureWorks2012;  
GO  
SELECT Name, Weight  
FROM Production.Product  
WHERE Weight IS NULL;  
GO  

Примеры: Azure Synapse Analytics и Система платформы аналитики (PDW)

Г. Использование функции ISNULL с функцией AVG

В приведенном ниже примере рассчитывается среднее значение веса всех продуктов в образце таблицы. Все записи со значением NULL в столбце

50 таблицы Weight заменяются значением Product.

-- Uses AdventureWorks  
  
SELECT AVG(ISNULL(Weight, 50))  
FROM dbo.DimProduct;  

Результирующий набор:

--------------------------   
52.88   

Д.

Использование функции ISNULL

В приведенном ниже примере функция ISNULL используется для поиска значений NULL в столбце MinPaymentAmount и отображения значения 0.00 для соответствующих строк.

-- Uses AdventureWorks  
  
SELECT ResellerName,   
       ISNULL(MinPaymentAmount,0) AS MinimumPayment  
FROM dbo.DimReseller  
ORDER BY ResellerName;  
  

Здесь приводится частичный результирующий набор.

ResellerNameMinimumPayment
A Bicycle Association0,0000
A Bike Store0,0000
A Cycle Shop0,0000
A Great Bicycle Company0,0000
A Typical Bike Shop200,0000
Acceptable Sales & Service0,0000

Е. Использование функции IS NULL для проверки на значение NULL в предложении WHERE

В приведенном ниже примере выполняется поиск всех продуктов, имеющих значение NULL в столбце Weight. Заметьте, что между словами IS и NULL стоит пробел.

-- Uses AdventureWorks  
  
SELECT EnglishProductName, Weight  
FROM dbo.DimProduct  
WHERE Weight IS NULL;  

См. также:

Выражения (Transact-SQL)
IS NULL (Transact-SQL)
Системные функции (Transact-SQL)
Предложение WHERE (Transact-SQL)
COALESCE (Transact-SQL)

IFNULL(), ISNULL(), COALESCE(), и NVL() — Учебник SQL — Schoolsw3.com

schoolsw3.com

САМОСТОЯТЕЛЬНОЕ ОБУЧЕНИЕ ДЛЯ ВЕБ РАЗРАБОТЧИКОВ


❮ Назад Далее ❯


IFNULL(), ISNULL(), COALESCE(), и NVL()

Посмотрите на следующую таблицу «Products»:

P_IdProductNameUnitPriceUnitsInStockUnitsOnOrder
1Jarlsberg10.451615
2Mascarpone32.5623 
3Gorgonzola15. 67920

Предположим, что столбец «UnitsOnOrder» является необязательным и может содержать нулевые значения.

Посмотрите на следующую инструкцию SELECT:

SELECT ProductName, UnitPrice * (UnitsInStock + UnitsOnOrder)
FROM Products;

В приведенном выше примере, если какое-либо из значений «UnitsOnOrder» равно NULL, результат будет равен нулю.


Решения

MySQL

MySQL функция IFNULL() позволяет возвращать альтернативное значение, если выражение равно нулю:

SELECT ProductName, UnitPrice * (UnitsInStock + IFNULL(UnitsOnOrder, 0))
FROM Products;

или мы можем использовать функцию COALESCE(), например:

SELECT ProductName, UnitPrice * (UnitsInStock + COALESCE(UnitsOnOrder, 0))
FROM Products;

SQL Server

SQL Server функция ISNULL() позволяет возвращать альтернативное значение, если выражение равно нулю:

SELECT ProductName, UnitPrice * (UnitsInStock + ISNULL(UnitsOnOrder, 0))
FROM Products;

MS Access

MS Access функция IsNull() возвращает TRUE (-1), если выражение имеет нулевое значение, в противном случае FALSE (0):

SELECT ProductName, UnitPrice * (UnitsInStock + IIF(IsNull(UnitsOnOrder), 0, UnitsOnOrder))
FROM Products;

Oracle

Oracle функция NVL() достигает того же результата:

SELECT ProductName, UnitPrice * (UnitsInStock + NVL(UnitsOnOrder, 0))

FROM Products;

❮ Назад Далее ❯

ВЫБОР ЦВЕТА



ТОП Учебники
HTML Учебник
CSS Учебник
JavaScript Учебник
КАК Учебник
SQL Учебник
Python Учебник
W3. CSS Учебник
Bootstrap Учебник
PHP Учебник
Java Учебник
C++ Учебник
jQuery Учебник
ТОП Справочники
HTML Справочник
CSS Справочник
JavaScript Справочник
SQL Справочник
Python Справочник
W3.CSS Справочник
Bootstrap Справочник
PHP Справочник
HTML Цвета
Java Справочник
Angular Справочник
jQuery Справочник
ТОП Примеры
HTML Примеры
CSS Примеры
JavaScript Примеры
КАК Примеры
SQL Примеры
Python Примеры
W3.CSS Примеры
Bootstrap Примеры
PHP Примеры
Java Примеры
XML Примеры
jQuery Примеры

Форум | О SchoolsW3

SchoolsW3 оптимизирован для бесплатного обучения, проверки и подготовки знаний. Примеры в редакторе упрощают и улучшают чтение и базовое понимание. Учебники, ссылки, примеры постоянно пересматриваются, чтобы избежать ошибок, но не возможно гарантировать полную правильность всего содержания. Некоторые страницы сайта могут быть не переведены на РУССКИЙ язык, можно отправить страницу как ошибку, так же можете самостоятельно заняться переводом. Используя данный сайт, вы соглашаетесь прочитать и принять Условия к использованию, Cookies и политика конфиденциальности.

Авторское право 1999- Все права защищены.
SchoolsW3 работает на площадке от SW3.CSS.

ISNULL (Transact-SQL) — SQL Server

  • Статья
  • 3 минуты на чтение

Применяется к: SQL Server Azure SQL База данных Azure SQL Управляемый экземпляр Azure Synapse Analytics Analytics Platform System (PDW)

Заменяет NULL указанным замещающим значением.

Соглашения о синтаксисе Transact-SQL

Синтаксис

 ISNULL (check_expression, replace_value)
 

Примечание

Чтобы просмотреть синтаксис Transact-SQL для SQL Server 2014 и более ранних версий, см. документацию по предыдущим версиям.

Аргументы

check_expression
Проверяется ли выражение на NULL. check_expression может быть любого типа.

replace_value
Выражение, которое должно быть возвращено, если check_expression равно NULL. replace_value должен иметь тип, который неявно преобразуется в тип check_expression .

Типы возвращаемых значений

Возвращает тот же тип, что и check_expression . Если литерал NULL указан как check_expression , возвращает тип данных replace_value . Если литерал NULL указан как check_expression и не указано replace_value , возвращается в .

Значение check_expression возвращается, если оно не равно NULL; в противном случае возвращается replace_value после неявного преобразования в тип check_expression , если типы разные. replace_value может быть усечен, если replace_value длиннее, чем check_expression .

Примечание

Используйте COALESCE (Transact-SQL), чтобы вернуть первое ненулевое значение.

Примеры

A. Использование ISNULL с AVG

В следующем примере определяется среднее значение веса всех продуктов. Он заменяет значение 50 для всех записей NULL в столбце Weight таблицы Product .

 ИСПОЛЬЗОВАТЬ AdventureWorks2012;
ИДТИ
ВЫБЕРИТЕ СРЕДНЕЕ (ISNULL (вес, 50))
ОТ Производство.Продукт;
ИДТИ
 

Вот набор результатов.

 --------------------------
59,79
 
(затронуты 1 ряд)
 

B. Использование ISNULL

В следующем примере выбираются описание, процент скидки, минимальное количество и максимальное количество для всех специальных предложений в AdventureWorks2012 . Если максимальное количество для определенного специального предложения равно NULL, MaxQty , показанное в наборе результатов, равно 0,00 .

 ИСПОЛЬЗОВАТЬ AdventureWorks2012;
ИДТИ
ВЫБЕРИТЕ Описание, DiscountPct, MinQty, ISNULL (MaxQty, 0,00) AS 'Максимальное количество'
ОТ Продажи. Специальное Предложение;
ИДТИ
 

Вот набор результатов.

Описание СкидкаPct Минимальное количество Максимальное количество
Без скидки 0,00 0 0
Скидка за объем 0,02 11 14
Скидка за объем 0,05 15 4
Скидка за объем 0,10 25 0
Скидка за объем 0,15 41 0
Скидка за объем 0,20 61 0
Гора-100 Кл 0,35 0 0
Спортивный шлем Di 0,10 0 0
Дорога-650 Оверст 0,30 0 0
Горная шина S 0,50 0 0
Спортивный шлем Di 0,15 0 0
Дорожная рама LL S 0,35 0 0
Универсал-3000 Пр 0,15 0 0
Универсал-1000 Пр 0,20 0 0
Педа за полцены 0,50 0 0
Гора-500 Си 0,40 0 0

(16 затронутых строк)

C.

Проверка на NULL в предложении WHERE

Не используйте ISNULL для поиска значений NULL. Вместо этого используйте IS NULL. В следующем примере выполняется поиск всех продуктов, которые имеют NULL в столбце веса. Обратите внимание на пробел между IS и NULL .

 ИСПОЛЬЗОВАТЬ AdventureWorks2012;
ИДТИ
ВЫБЕРИТЕ Имя, Вес
ОТ Производство.Продукт
ГДЕ Вес НУЛЬ;
ИДТИ
 

Примеры: Azure Synapse Analytics and Analytics Platform System (PDW)

D. Использование ISNULL с AVG

В следующем примере выполняется поиск среднего веса всех продуктов в образце таблицы. Он заменяет значение 50 для всех записей NULL в столбце Weight таблицы Product .

 -- Использует AdventureWorks
  
ВЫБЕРИТЕ СРЕДНЕЕ (ISNULL (вес, 50))
ОТ dbo.DimProduct;
 

Вот набор результатов.

 --------------------------
52,88
 

E. Использование ISNULL

В следующем примере ISNULL используется для проверки значений NULL в столбце MinPaymentAmount и отображения значения 0,00 для этих строк.

 -- Использует AdventureWorks
  
ВЫБЕРИТЕ имя реселлера,
       ISNULL(MinPaymentAmount,0) AS Минимальный платеж
ОТ dbo.DimReseller
ЗАКАЗАТЬ ПО ResellerName;
  
 

Вот неполный набор результатов.

Имя торгового посредника Минимальный платеж
Ассоциация велосипедистов 0,0000
Магазин велосипедов 0,0000
Веломагазин 0,0000
Великая велосипедная компания 0,0000
Типичный магазин велосипедов 200.0000
Приемлемые продажи и обслуживание 0,0000

F. Использование IS NULL для проверки на NULL в предложении WHERE

В следующем примере выполняется поиск всех продуктов, имеющих NULL в столбце Weight . Обратите внимание на пробел между IS и NULL .

 -- Использует AdventureWorks
  
ВЫБЕРИТЕ английскийProductName, Weight
ОТ dbo.DimProduct
ГДЕ Вес НУЛЬ;
 

См. также

Выражения (Transact-SQL)
IS NULL (Transact-SQL)
Системные функции (Transact-SQL)
WHERE (Transact-SQL)
COALESCE (Transact-SQL)

Объяснение функции SQL ISNULL [Easy Примеры]

Содержание

Реклама

Обзор функции SQL ISNULL

SQL ISNULL — это функция, которая используется для проверки или замены нулевого значения указанного столбца или выражения, которое является первым параметром функции, если оно равно нулю чем функция вернет значение второго параметра как альтернативное или замененное значение, и если значение первого параметра не равно нулю, функция вернет то же самое.

SQL ISNULL — это расширенная функция SQL, которая принимает два параметра: первый — это выражение или имя столбца, а второй — значение, которое возвращается, если выражение или столбец содержат значение NULL

 

Что такое значения NULL и функции NULL в SQL?

Нулевые значения отсутствующих данных в таблицах SQL похожи на заполнители в базе данных, где данные недоступны, значение NULL не является частью какого-либо типа данных SQL, столбец с любым типом данных может иметь значение NULL.

ТАКЖЕ ЧИТАЙТЕ: Как искать в SQL имя столбца? [РЕШЕНО]

Нулевые функции необходимы для выполнения операций над нулевыми значениями, хранящимися в базе данных. Мы можем применять функции к значениям NULL, чтобы проверить, является ли значение нулевым или нет, или выполнить над ним какую-либо операцию.

Функция Описание
ЕСНУЛЬ() Используется для проверки значения NULL в первом аргументе и замены его значением второго аргумента
ЕСЛИНУЛЬ() Возвращает значение первого аргумента, если оно равно NULL, в противном случае возвращает второе значение
ОБЪЕДИНЕНИЕ() Возвращает первое не NULL значение из списка аргументов
НВЛ() используется для замены значения NULL желаемым значением, заданным пользователем

 

Синтаксис SQL ISNULL

 ISNULL (выражение_проверки | имя_столбца , значение) 
  • выражение_проверки | имя_столбца: Указано выражение или имя столбца таблицы, которое должно быть проверено на NULL или нет
  • значение : Указанное значение, которое должно быть возвращено как замещающее или альтернативное значение, если выражение имеет значение NULL

 

Тип возвращаемого значения SQL ISNULL

Возвращает тот же тип, что и check_expression . Если литерал NULL указан как check_expression , возвращает тип данных значения . Если литерал NULL указан как check_expression , а значение не указано, возвращает целое число.

 

Функция SQL ISNULL Примеры

Пример простой оценки строки

 SELECT ISNULL(NULL, 'Hello') AS checkNULL 

В приведенном выше запросе мы использовали функцию SQL ISNULL для проверки того, что выражение первого аргумента равно NULL или нет, оно начинает эволюцию с первого аргумента, который равен NULL, поэтому он проверяет второй аргумент, который является строкой «Hello», поэтому он возвращает «Hello». в качестве замены Значение

ТАКЖЕ ПРОЧИТАЙТЕ: SQL LEFT JOIN с практическими примерами0017

 SELECT ISNULL(NULL, 100) AS NotNULL 

В последовательном запросе мы также применяем функцию SQL ISNULL для проверки значения NULLABLE в первом параметре, который равен NULL, поэтому в результате будет возвращено целочисленное значение второго параметра, равное 100

ВЫВОД:

 

Пример функции SQL ISNULL с NULL в качестве второго аргумента значение в качестве второго аргумента не влияет на результат, оно вернет значение первого аргумента как «функции SQL»

Выход:

SQL ISNULL Примеры.

студенческий_идентификатор имя студента допуск№ дата поступления регистрационно дата_рождения электронная почта город class_id 101 Рима 10001 02-02-2000 е15200002 03.02.1990 [email protected] 2 102 крия 10002 05.04.2001 е16200003 08.04.1991 [email protected] 1 103 Мина 10003 05.06.1999 е15200004 09.02.1989 Вадодара 3 104 карлин 2001 01.04.1998 е14200001 04-04-1989 [email protected] Вапи 1 105 дхирен 2002 02-02-1997 е13400002 03. 02.1987 [email protected] Сурат 2 106 наем 2003 01-01-1997 е13400001 03-03-1987 наем@gmail.com 2 107 махир 10004 09.06.2000 е15200003 09.07.1990 Вапи 3 108 ниши 2004 04.02.2001 е16200001 03-02-1991 [email protected] Вадодара 1

Таблица результатов

result_id идентификатор_студента название экзамена экзаменационная дата идентификатор субъекта получитьзнак всего баллов процент класс статус
3001 101 сем1 08. 07.2001 1 80 100 80 А+ пройти
3002 101 сем1 08-08-2001 2 76 100 76 А+ пройти
3003 102 сем3 05-05-2000 3 67 100 67 А пройти
3004 102 сем3 05.06.2000 4 89 100 89 А+ пройти
3005 102 сем3 05.07.2000 5 90 100 90 А+ пройти
3006 103 сэм5 09.08.1998 6 55 100 55 Б пройти
3007 105 сем3 09-09-2001 2 78 100 78 А+ пройти

ТАКЖЕ ЧИТАЙТЕ: SQL INSERT INTO SELECT с практическими примерами

В вышеприведенной базе данных School таблица учеников имеет нулевые значения в двух столбцах: электронная почта и город

Используйте функцию SQL ISNULL, чтобы проверить значения столбца города для всех студентов, если оно равно NULL, замените его на «Surat»

 SELECT student_id, ISNULL (город, «Surat») Как «студенческий город»
ИЗ таблицыстудент;
 

В приведенном выше запросе SQL проверяет значение столбца города, используя функцию ISNULL для NULL, и заменяет его на Surat.

ВЫВОД:

 

Функция SQL ISNULL с функцией агрегирования Агрегатные функции

Реклама

Например, чтобы найти средние оценки учащихся, если оценка равна NULL, а не 35 баллов,

 SELECT AVG(ISNULL(obtainmark, 35)) AS Avage
ИЗ dbo.tblрезультат
 

В предыдущем запросе сначала все значения NULL столбца получения оценок заменяются на 35, а затем функция AVG Aggregate для результирующего набора всех ненулевых значений

ВЫВОД:

 

чтобы определить средний процент студентов, если ни у одного из них нет NULL и оба значения столбца равны

 ВЫБЕРИТЕ СРЕДНЕЕ(ISNULL(проценты, 35)) КАК Среднее, СУММ(ISNULL(метка получения, 35)) КАК СУММА
ИЗ dbo.tblрезультат
 
  • В приведенном выше запросе функция SQL ISNULL используется как вложенная в агрегатную функцию AVG и SUM
  • Перед нахождением среднего значения в процентах функция SQL ISNULL заменит значение NULL в процентах на 35, так же, как если бы полученная оценка какого-либо учащегося не существовала, она будет заменена оценкой 35 с использованием SQL ISNULL
  • .

ТАКЖЕ ПРОЧИТАЙТЕ: формат даты SQL с примерами

ВЫВОД:

 

Функция SQL ISNULL с предложением INNER JOIN, GROUP BY и WHERE

ВЫБЕРИТЕ dbo.tblstudent.city, COUNT(ISNULL(dbo.tblstudent.city, ‘Surat’)) AS ‘всего студентов’ ИЗ dbo.tblstudent ВНУТРЕННЕЕ СОЕДИНЕНИЕ dbo.tblresult НА dbo.tblstudent.student_id = dbo.tblresult.student_id ГДЕ (dbo.tblresult.examname = ‘sem3’) ГРУППА ПО dbo.tblstudent.city
  • Две таблицы student и result ate соединены с помощью SQL Inner join
  • Для создания групповой записи учащихся применяется пункт GROUP By city, а для подсчета записей учащихся каждого города используется функция совокупного подсчета
  • Функция SQL ISNULL применяется к столбцу города для проверки нулевого значения в том же столбце и, если существует, заменяет его названием города «Сурат»

ВЫВОД:

 

Чтобы отобразить общее количество полученных оценок за каждый семестр, минимальные полученные оценки и максимальные полученные оценки, если все оценки учащихся доступны в таблице результатов, если нет оценок, замените ноль на 30 оценок

 SELECT dbo. tblresult.examname, SUM(ISNULL(dbo.tblresult.obtainmark, 30)) AS 'Общее количество баллов', MIN(ISNULL(dbo.tblresult.obtainmark, 30)) AS 'Минимальное количество баллов', MAX(ISNULL (dbo.tblresult.obtainmark, 30)) AS 'Максимальные баллы' ИЗ dbo.tblresult
ВНУТРЕННЕЕ СОЕДИНЕНИЕ dbo.tblstudent ON dbo.tblresult.student_id = dbo.tblstudent.student_id
ВНУТРЕННЕЕ СОЕДИНЕНИЕ dbo.tblsubject ON dbo.tblresult.subjectid = dbo.tblsubject.subjectid
СГРУППИРОВАТЬ ПО dbo.tblresult.examname
 
  • В приведенном выше запросе внутреннее соединение SQL используется для соединения двух таблиц
  • Для получения итоговых, минимальных и максимальных оценок за каждый семестр используется группировка по пункту
  • Перед применением агрегатной функции SUM, MIN и MAX в полученных оценках нам необходимо проверить значения оценок, поэтому функция SQL ISNULL применяется к столбцу получения оценок

ТАКЖЕ ЧИТАЙТЕ: Как использовать удаление SQL с JOIN? [РЕШЕНО]

ВЫВОД:

 

Сравнение функций SQL ISNULL() V/S SQL Coalesce() — это проприетарная форма SQL, используемая Microsoft SQL Server, тогда как функция SQL Coalesce основана на ANSI SQL 9.

0004
  • Функция SQL IS NULL содержит только два параметра, тогда как функция SQL Coalesce может иметь несколько параметров. Если мы хотим использовать функцию SQL ISNULL с несколькими параметрами, нам нужно использовать ее как вложенную функцию SQL ISNULL
  •  

    Примеры подобия между ISNULL() и Coalesce()

     SELECT ISNULL(NULL, 'Hello') AS 'NotNULL Value'
    SELECT COALESCE (NULL, 'Hello') AS 'NotNULL Value'
     

    Выше оба запроса показывают сходство между функциями Coalesce и IsNull, оба запроса дают одинаковый результат при их выполнении.

    Реклама

    ВЫВОД:

     

    Пример различия между ISNULL() и Coalesce()

     SELECT ISNULL(NULL, NULL) AS 'NotNULL Value
    SELECT COALESCE (NULL, NULL) AS 'NotNULL Value'
     

    Когда мы выполним оба вышеуказанных запроса,

    • первый запрос с функцией Coalesce вернет сообщение об ошибке «По крайней мере один из аргументов COALESCE должен быть типизированным NULL»
    • Второй запрос с функцией ISNULL вернет NULL в качестве возврата

    ВЫВОД:

     ВЫБРАТЬ ОБЪЕДИНИТЬ (НУЛЬ, НУЛЬ, 10) КАК «Значение NotNULL»
    ВЫБЕРИТЕ ISNULL (NULL, ISNULL (NULL, 10)) AS 'Значение NotNULL'
     

    Вышеупомянутые оба запроса дадут тот же результат, что и 10, но способ записи аргументов для оценки отличается: мы можем указать больше аргументов с помощью функции Coalesce, тогда как с помощью IsNULL мы можем дать только два аргумента.

    ТАКЖЕ ПРОЧИТАЙТЕ: SQL Not Equal Tutorial [Практические примеры]

    ВЫВОД:

     

    Разница между оператором IS NULL и функцией ISNULL()

    • Функция SQL ISNULL() возвращает альтернативное значение или заменяет значение NULL значением второго аргумента, если выражение равно NULL. Оператор IS NULL перечисляет все записи со значением NULL
    • .
    • При использовании оператора SQL Is NULL логическое выражение, используемое для фильтрации записи или записей, в функции SQL ISNULL преобразует нулевое значение в другое значение
    • IS NULL используется в предложении WHERE для оценки условия. С другой стороны, ISNULL() — это функция, которая проверяет столбец или значение и возвращает конкретное значение, если в результате оценки возвращается NULL

     

    Пример различия между операторами ISNULL() и Is NULL

    Если мы хотим найти список студентов, чьи данные об идентификаторе электронной почты отсутствуют или имеют значение NULL, мы можем получить такие записи, используя оператор Is NULL с оператором условия Where в запросе выбора

     ВЫБЕРИТЕ id_студента, имя учащегося, номер приема, дату поступления, номер регистрации, дату_рождения, адрес электронной почты, город, идентификатор класса
    ОТ tblstudent
    ГДЕ (электронная почта НУЛЕВАЯ)
     

    В приведенном выше запросе мы используем оператор Is NULL для проверки нулевого значения в отправленном по электронной почте столбце таблицы учащихся 9.