Isnull в SQL: что это и как это работает
Функция isnull () возвращает значение true, если ее аргумент равен NULL, и false в противном случае. В качестве аргумента может быть любое выражение, которое может принимать значение NULL.
Пример использования функции isnull () в запросе SELECT:
SELECT first_name, last_name, isnull(email, 'No email provided') as email
FROM users
В данном примере, если в столбце email есть пустые значения (NULL), то вместо них будет выведено сообщение 'No email provided'.
Еще один пример использования функции isnull () - это проверка переменных в языке программирования T-SQL:
DECLARE @myVar varchar(50) = NULL;
IF isnull(@myVar, '') = ''
BEGIN
PRINT 'The variable is empty';
END
ELSE
BEGIN
PRINT 'The variable contains a value';
END
В данном примере переменная @myVar инициализирована значением NULL. Используя функцию isnull (), мы проверяем, равна ли она пустой строке. Если да, то выводим сообщение 'The variable is empty', иначе - 'The variable contains a value'.
Также функция isnull () может использоваться в выражениях CASE, например:
SELECT product_name,
CASE isnull(price, -1)
WHEN -1 THEN 'Price not available'
ELSE cast(price as varchar(10))
END as price
FROM products
В этом запросе мы выводим название продукта и его цену. Если цена равна NULL, мы выводим сообщение 'Price not available'. Иначе, преобразуем цену в строку и выводим ее.