SQL Server - замена пустой строки на пустую строку в выбранной статистике - PullRequest
16 голосов
/ 27 января 2010

У меня есть таблица SQL Server 2005, в которой есть строковый столбец, в котором пустые значения иногда хранятся как NULL, а другие как пустая строка.

Я делаю SELECT DISTINCT для этого столбца, и я получаю все различные значения + NULL + пустая строка. Но я хотел бы проверить, имеет ли значение NULL, и вместо этого вернуть пустую строку. Таким образом, результирующим набором будут все отдельные значения + пустая строка (если какие-либо значения были нулевыми или пустой строкой).

Но как я могу сделать это в операторе SELECT?

Ответы [ 3 ]

38 голосов
/ 27 января 2010

Проверьте ISNULL () в Электронной документации по SQL Server .

Синтаксис:

ISNULL ( check_expression , replacement_value )

Пример:

Select ISNULL(myfield1,'') from mytable1
4 голосов
/ 27 января 2010

Посмотрите на функцию Coalesce . Возвращает первое не null переданное значение.

COALESCE( myValue , '' )

Это вернет myValue, если оно не равно нулю, или пустую строку (''), если это так.

Это менее многословно, чем использование многих предложений ISNULL() и IF, и поэтому их легче читать.

2 голосов
/ 23 октября 2013
SELECT DISTINCT ISNULL(columnname, '') FROM table WHERE ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...