问题描述
我想选择仅存在于表A中的数据,而不包括表B中的数据。左联接要花很多时间,因此,考虑使用外部应用而不是左联接来进行处理。但是我没有得到想要的输出。为什么NULL条件在外部内部不起作用?并且这两个表各有至少一百万条记录,并且在到达这一点之前,表A与一个大表连接在一起。注意:与下面的示例不同,表A有很多列(id,名称,城市,dob),表B有两列。
表A
id name
1 a
2 b
3 c
4 d
5 e
6 f
表B
id name
3 c
4 d
预期结果
id name
1 a
2 b
5 e
6 f
部分代码:
select from #t1 DECLARE @t1 TABLE (id int,name varchar(10)) INSERT INTO @t1 SELECT 3,'c' INSERT INTO @t1 select 4,'d' select #t1.* from #t1 OUTER APPLY (SELECT * FROM @t1 WHERE #t1.id = [@t1].id AND [@t1].id IS NULL)t
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)