Да, функция называется ISNULL
, вы используете ее так:
SELECT ISNULL(columnname, 0.0) AS xyz FROM tablename
Вы в основном указываете, какое значение возвращать в случае, если первое значение равно null
.
Обратите внимание, что ISNULL
не возвращает логическое значение, указывающее, является ли параметр null
или нет, вместо этого вы передаете ему 2 параметра, и он выполняет следующие действия:
- Если первый аргумент не является
null
, вернуть значение первого аргумента
- В противном случае вернуть второй аргумент
Для этого вы также можете использовать функцию COALESCE
, которая принимает неопределенное количество параметров и возвращает первое не-1020 * значение аргумента обратно в указанном порядке.
Другими словами:
ISNULL(columnname, 0.0)
и
COALESCE(columnname, 0.0)
ведет себя так же, но я не знаю, есть ли разница в "значимости" этих двух, т.е. могут ли они использовать индексы или нет.