Я использую SQL Server 2005. У меня есть таблица с текстовым столбцом, и у меня есть много строк в таблице, где значение этого столбца не нулевое, но оно пустое. Попытка сравнить с '' дает следующий ответ:
Типы данных text и varchar несовместимы в операторе не равно.
Существует ли специальная функция для определения, является ли значение текстового столбца не пустым, а пустым?
Ответы:
источник
OR mytextfield IS NULL
когда ваша колонка может бытьNULL
mytextfield IS NULL *OR*
:-)источник
На самом деле, вы просто должны использовать оператор LIKE.
источник
Чтобы получить только пустые значения (а не нулевые значения):
Чтобы получить как нулевые, так и пустые значения:
Чтобы получить только нулевые значения:
Чтобы получить значения, отличные от null и empty:
И помните, используйте фразы LIKE только при необходимости, поскольку они ухудшают производительность по сравнению с другими типами поиска.
источник
myColumn IS NOT NULL AND my column = '';
?Используйте оператор IS NULL:
источник
источник
SQL SELECT * FROM TABLE WHERE IFNULL(FIELD, '')=''
Я знаю, что этот пост древний, но я нашел его полезным.
Это не решило мою проблему возврата записи с непустым текстовым полем, поэтому я решил добавить свое решение.
Это пункт, который работал для меня.
источник
Используйте метод DATALENGTH , например:
источник
Я бы протестировал против SUBSTRING (textColumn, 0, 1)
источник
Являются ли NULL и пустая строка эквивалентными? Если это так, я бы включил логику в свое приложение (или, может быть, триггер, если приложение «из коробки»?), Чтобы заставить поле быть либо нулевым, либо '', но не другим. Если вы выбрали '', то вы также можете установить для столбца значение NOT NULL. Просто вещь для очистки данных.
источник
Я хотел, чтобы предопределенный текст («Нет доступных лабораторий») отображался, если значение было пустым или пустым, и мой друг помог мне с этим:
источник
Вы должны сделать оба:
SELECT * FROM Table WHERE Text IS NULL or Text LIKE ''
источник
Я знаю, что есть много ответов с альтернативами этой проблеме, но я просто хотел бы собрать то, что я нашел как лучшее решение @Eric Z Beard & @Tim Cooper с @Enrique Garcia & @Uli Köhler.
Если необходимо учесть тот факт, что только пробел может быть таким же, как пустой, в вашем сценарии использования, потому что запрос ниже вернет 1, а не 0.
Поэтому я бы пошел на что-то вроде:
источник
попробуй это:
я надеюсь помочь тебе!
источник
Вместо использования
isnull
use acase
, из-за производительности это лучше.В вашем выпуске вам нужно сделать это:
Код как это:
источник
источник