我正在尝试编写一个查询,它将调出表中没有特定数据的id。目前,我们正在尝试查找属于某个表但缺少数据的人。
例如,我们要确保每个人都有这三个项目
表1
项目\u id
第1项
第2项
第3项
我们把这个放在table下面
表2
身份证件。。项目\u id
1 .. 第1项
1 .. 第2项
1 .. 第3项
2 .. 第1项
2 .. 第2项
三。。第1项
等等。您可以看到ID2缺少表中的项\u3,我想拉一个元组,在查询中显示2,项\u3。
到目前为止,我有这样的东西
SELECT DISTINCT b.ID, a.item
FROM TABLE1 a
LEFT OUTER JOIN TABLE2 b
ON a.ITEM_ID=b.ITEM_ID
WHERE b.ITEM_ID is NULL
我一直在尝试写一些东西,我可以拉的项目\u标识一些标识丢失,但没有工作到目前为止。
2条答案
按热度按时间lmvvr0a81#
如果表2中有完整的ID列表,则可以使用该列表,但如果没有,则可以使用此列表:
http://sqlfiddle.com/#!9/2d0a19/7年
我做了一个
CROSS JOIN
获取所有可能组合的列表,然后从表中选择缺少的组合。vngu2lb82#