2017-03-22 12 views
0
SELECT * 
FROM [dbo].[drugTP] 
WHERE [DrugRate] IS NULL 

enter image description hereSQL Serverがnull値を返すことができないのはなぜですか?

私はこのクエリを実行すると、SQL Serverは、空のグリッドを返し、なぜ?

+3

がnullまたは空の文字列あなたの値であり、等しい場合はNULLを返し、空の文字列

SELECT * FROM [dbo].[drugTP] WHERE [DrugRate] IS NULL or [DrugRate] = '' 

または関数NULLIFを使用して、一致試すことができますか? – CollinD

+0

NULLの値は、値が不明であることを示します。 NULLの値は、空の値またはゼロの値とは異なります。 2つのヌル値は等しくありません。 2つのNULL値の間、またはNULLと他の値の間の比較は、各NULLの値が不明であるために不明を返します。 –

+0

値が空だと思います。だから私はそれを処理することができます – Hakawati

答えて

0

おそらく、列の値は "NULL"値ではなく空の文字列です。

次の2つのパラメータが

SELECT * 
FROM [dbo].[drugTP] 
WHERE NULLIF([DrugRate],'') IS NULL