【发布时间】:2023-03-26 02:23:01
【问题描述】:
我有两个表,“Affiliates”和“ControlPanels”。
ControlPanels 有一个字段 (CP_AffiliateID) 映射到附属公司 (A_ID)。
我想从 CP_AffiliateID 中不匹配的 Affiliates 中选择所有记录。
字段 A_ID 是主键,所以我不担心匹配 NULL。
这个连接会是什么样子?
【问题讨论】:
-
Affiliates LEFT OUTER JOIN ControlPanels ON A_id = cp_affiliateID WHERE ControlPanels.CP_AffiliateID IS NULL或者你可以做FROM Affiliates aff WHERE NOT EXISTS (SELECT 1 FROM ControlPanels cp WHERE cp.cp_affiliate_id = aff.a_id) -
@JNevill,谢谢!我不认为这是一个 dup b/c 我不关心在 NULL 上的匹配,因为 A_ID 是一个主键。 HTH。
-
@nbardach 更仔细地查看副本以及它与您的问题的关系。在
CP_AffiliateID中寻找NULL 绝对是正确的方法。A_ID是主键并不重要。 -
@Tab Aleman,实际上,并不是我想要来自 CP_AffiliateID 为 NULL 的附属公司的所有记录。只是如果CP_AffiliateID中有'5',我不想包括来自A_ID ='5'的Affiliates的记录;
标签: sql-server join