我想从“地址”列不为空的表中获取所有数据,所以我做了一个看起来像这样的声明......
从地址不为空的表中选择 *
不幸的是,“地址”列中有空格,因此 SQL 不能将其视为 Null
如何显示地址不为空的行?谢谢 :)
大多数数据库系统都有一个 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 > ''
它一口气杀死空值和空字符串。它甚至会排除完全由空格组成的字符串(''、''等)。它还保留了 SARGability。