You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL查询问题:如何筛选指定字段不全为空的行?

正确获取Id、country、adresse不全为Null的SQL查询

你当前的查询逻辑是要求Id、country、adresse**全部**不为Null,但你的需求是筛选这三个字段**不全为Null(至少有一个字段不为Null)**的行,两者逻辑完全相反,所以没有返回预期结果。

以下两种写法都可以满足你的需求:

写法一:直接判断至少一个字段非Null

SELECT * 
FROM tb1 
WHERE Id IS NOT NULL 
   OR country IS NOT NULL 
   OR adresse IS NOT NULL;

写法二:排除三个字段全为Null的行

SELECT * 
FROM tb1 
WHERE NOT (Id IS NULL AND country IS NULL AND adresse IS NULL);

这两种查询逻辑等价,都会返回你示例中的第1行(Id和country非Null)和第4行(Id非Null)。

内容的提问来源于stack exchange,提问作者tamo007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 02:55:26