TSQL /访问
我试图返回结果集的反转....
SELECT Units.Unit_ID
FROM Units
WHERE (((Units.[Unit_ID]) In (SELECT Objects.Unit_ID FROM Objects)));
这将返回上面的完整集以及我预期的单个附加记录....
SELECT Units.Unit_ID
FROM Units
WHERE (((Units.[Unit_ID]) not In (SELECT Objects.Unit_ID FROM Objects)));
单位已放弃对象中不存在的记录。许多物体为1个单位。但是对象中不存在某些单位。这是我要找的结果集。
数据样本集:
物件 UNIT_ID 1 1 1 2 2 4 五 56 78
单位 UNIT_ID 1 2 3 4 五 56 78
结果集应为:3
我不想返回两个表中的值。
答案 0 :(得分:1)
好奇,这又回归了什么:
SELECT Units.Unit_ID
FROM Units
LEFT JOIN Objects ON Objects.Unit_ID = Units.[Unit_ID]
WHERE Objects.Unit_ID IS NULL
OR
SELECT Units.Unit_ID
FROM Units
LEFT JOIN Objects ON Objects.Unit_ID = Units.[Unit_ID]
GROUP BY Units.Unit_ID
HAVING COUNT(Objects.Unit_ID) = 0