0

「住所」列がnullではないテーブルからすべてのデータを取得することを想定していたので、次のようなステートメントを作成しました...

アドレスが null でないテーブルから * を選択

残念ながら、「アドレス」列にスペースを含む行があるため、SQL はそれを Null と見なすことができません。

Address が null でない行を表示するにはどうすればよいですか? ありがとう :)

4

1 に答える 1

2

ほとんどのデータベース システムには NULLIF() 関数があります。以前ではないにしても、 ANSI SQL-99 標準で COALESCE() と一緒に定義されました。少なくとも SQL Server、Oracle、PostgreSQL、MySQL、SQLite、DB2、Firebird に実装されています。

Select * from Table where NULLIF(Address,'') is not null

でも私的にはこっちの方が好きです

Select * from Table where Address > ''

null と空の文字列を一度に削除します。完全にスペースで構成される文字列 (''、' ' など) も除外されます。また、SARGability も保持します。

于 2012-11-16T06:34:03.247 に答える