SQLServer получает результаты, где значение равно нулю

StackOverflow https://stackoverflow.com/questions/28922

  •  09-06-2019
  •  | 
  •  

Вопрос

У меня есть база данных SQL-сервера, к которой я запрашиваю, и я хочу получать информацию только тогда, когда определенная строка равна нулю.Я использовал операторwhere, например:

WHERE database.foobar = NULL

и он ничего не возвращает.Однако я знаю, что есть хотя бы один результат, потому что я создал в базе данных экземпляр, где «foobar» равен нулю.Если я уберу операторwhere, он покажет данные, поэтому я знаю, что это не остальная часть запроса.

Может кто-нибудь мне помочь?

Это было полезно?

Решение

Правильный синтаксис: WHERE data.foobar IS NULL.Видеть http://msdn.microsoft.com/en-us/library/ms188795.aspx для получения дополнительной информации

Другие советы

Сравнение с NULL каждый раз будет ложным.Вместо этого вы хотите использовать IS NULL.

x =  NULL      -- always false
x <> NULL      -- always false

x IS NULL      -- these do what you want
x IS NOT NULL

Читать Тестирование на наличие нулевых значений, вам нужно IS NULL, а не = NULL

Это база данных SQL Server?Если да, используйте IS NULL вместо сравнения (MSDN).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top