You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编写T-SQL查询:找出已发送给供应商但未返回的MemberID

找出未被供应商返回的MemberID的T-SQL查询方法

我们将TABLE1(发送给供应商的数据)中的成员数据提供给供应商,供应商返回包含新信息的TABLE2数据,两者通过MemberID字段匹配。以下是几种实用的T-SQL查询方法,用于找出TABLE1中存在但TABLE2中未返回的MemberID:

方法1:LEFT JOIN 结合 NULL 判断

SELECT t1.MemberID
FROM TABLE1 t1
LEFT JOIN TABLE2 t2 ON t1.MemberID = t2.MemberID
WHERE t2.MemberID IS NULL;

通过LEFT JOIN保留TABLE1的所有记录,TABLE2中无法匹配的记录对应的字段会显示为NULL,过滤这些行即可得到未被返回的MemberID。

方法2:使用 NOT EXISTS

SELECT MemberID
FROM TABLE1
WHERE NOT EXISTS (
    SELECT 1
    FROM TABLE2
    WHERE TABLE2.MemberID = TABLE1.MemberID
);

逐个检查TABLE1中的MemberID,如果在TABLE2中不存在匹配项,则保留该记录,逻辑直观且性能表现优异。

方法3:使用 EXCEPT 集合操作

SELECT MemberID FROM TABLE1
EXCEPT
SELECT MemberID FROM TABLE2;

EXCEPT会返回第一个查询结果中存在、但第二个查询结果中不存在的记录,自动完成去重,适合快速对比两个数据集的差异(需SQL Server 2005及以上版本支持)。

内容的提问来源于stack exchange,提问作者Austin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 15:15:32