我正在调用一个表并寻找空值。其中“report_date”正在寻找 TRUE,而另外两列正在寻找 FALSE,我似乎得到了夸大的数字,我相信这是我的 WHERE 子句之后的操作顺序。
SELECT DISTINCT
"report_date",
"department",
"business_unit"
FROM
"system"
WHERE
"report_date" IS TRUE
AND
"department" IS FALSE
OR
"business_unit" IS FALSE;
我本来只是希望看到满足条件时列出的空值,但现在看来报告日期正在提取 FALSE 值。
如评论中所述,不要“引用”列名称,但由于 where 子句具有 OR,也可能会得到不正确的值。 可能会尝试更多类似的东西
SELECT DISTINCT
report_date,
department,
business_unit
FROM
system
WHERE
report_date IS TRUE
AND ( department IS FALSE
OR business_unit IS FALSE )