-1

我有一个包含参考 id 列的表。此参考 id 列包含某些行的主键。现在我想从表中过滤所有包含 NULL 的其余值。
桌子

PK   REFERENCE_ID
1        1
2        NULL
3        3
4        NULL
5        ab

下面的查询带来了所有具有 reference_id 但我想获取 REFERENCE_ID 列的所有 NULL 值的结果

select count(*)from table where table.ID not in (select table.reference_id from person)

我用过也存在但没用。重要的是我参考 PK 搜索它,因为我想从 PK 以外的列 REFERENCE_ID 中获取所有值,包括 NULL 值。

4

2 回答 2

1

也许我仍然不清楚您要做什么,但是将原始查询的元素与 结合起来会起作用IS NULL吗?

SELECT PK, Reference_ID
FROM table 
WHERE table.Reference_ID NOT IN (select PK from table)
  OR table.Reference_ID IS NULL

编辑:我不确定 Reference_ID 字段中的“ab”。如果 Reference_ID 是 varchar 或类似字段,您可能需要这个:

SELECT PK, Reference_ID
FROM table 
WHERE table.Reference_ID NOT IN (select cast(PK as varchar(5)) from table)
  OR table.Reference_ID IS NULL
于 2013-02-13T04:33:22.213 回答
0

你有没有尝试过:

SELECT Reference_ID
FROM Table
WHERE Reference_ID IS NULL;
于 2013-02-13T00:03:35.840 回答