在 SQL 查询中,经常会遇到查询结果为空的情况,是空值或空字符串时。你已经写了这样的查询语句:

select ct.name from (ch_flatmod as a left join ch_flat as b on a.HOUSE_ID_NEW=b.HOUSE_ID) left join ct_house_use ct on b.house_use=ct.code where ct.name is null or ct.name=''
,但返回的结果却还是为空,为什么呢?这类问题通常是因为在数据中,ct.name存储的是空格或其他不可见字符,而不是标准的空字符串('')。你可以尝试用TRIM()函数来清理这些隐形字符,或者在查询条件中加入更多的判断条件来确认数据的完整性。

总结一下,查询空值时,不仅要检查NULL,还得考虑到像空格这类“伪空”的情况,使用TRIM()或类似方法来避免漏掉这些数据。

如果你对 SQL 查询有更多需求,可以参考以下几篇文章: