2016-11-22 13 views

答えて

2

比較演算子でNULLの値を確認することはできません(=<<>など)。

あなたが代わりにIS NULLIS NOT NULL演算子を使用する必要がある、またはあなたがISNULL()COALESCE()

Select * From MyTableName where [boolfieldX] <> 1 OR [boolfieldX] IS NULL 

OR

Select * From MyTableName where ISNULL([boolfieldX],0) <> 1 

のような機能を使用する必要がStackoverflow Documentation

でヌルの比較についての詳細を読みます

Stackoverflow Documentation

+1

[@Graham](https://stackoverflow.com/users/641914/graham)コメントを残して、リンクや周囲の段落を完全に削除するのではなく、ドキュメントへのリンクを修正してください。 –

-2

ISNULL()COALESCE()機能再こんにちは、このクエリを使用しよう:

select * from mytablename where [boolFieldX] is null And [boolFieldX] <> 1 
1

私はnullが未知の値であるからだと考えています。未知の '値'に対して照会することはできません。私の意見では、 '値'としてヌルを参照することは知られていないため、矛盾です。任意の選択基準が望ましい結果を返すか、またはnullを代替値に変換して変換すると、 "Is Null"および "Not Is Null"演算子を使用すると、次のように動作します。IsNull([boolfield]、 'some compatible value ')

関連する問題