Ответ 1
Обратите внимание на ISNULL() в Электронная документация по SQL Server.
Синтаксис:
ISNULL ( check_expression , replacement_value )
Пример:
Select ISNULL(myfield1,'') from mytable1
У меня есть таблица SQL Server 2005, в которой есть строковый столбец, в котором пустые значения иногда хранятся как NULL
и другие времена как пустая строка.
Я делаю SELECT DISTINCT
в этом столбце, и я получаю все различные значения + NULL + пустая строка. Но я хотел бы проверить, является ли значение NULL и вместо этого возвращает пустую строку. Таким образом, результатом будет все различные значения + пустая строка (если любые значения были пустыми или пустыми).
Но как я могу это сделать в инструкции SELECT?
Обратите внимание на ISNULL() в Электронная документация по SQL Server.
Синтаксис:
ISNULL ( check_expression , replacement_value )
Пример:
Select ISNULL(myfield1,'') from mytable1
Посмотрите на функцию Coalesce. Возвращает первое не входящее в null
значение.
COALESCE( myValue , '' )
Это вернет myValue, если оно не равно нулю, или пустую строку (''
), если это так.
Это менее многословно, чем использование многих предложений ISNULL()
и IF
, и поэтому их легче читать.
SELECT DISTINCT ISNULL(columnname, '') FROM table WHERE ...