首页新闻找找看学习计划

怎样判读A表中的每一个字段在B表中是否存在

0
悬赏园豆:10 [已解决问题] 解决于 2016-10-07 15:49

现在有一个A表,里面有这样两个字段EmployeeCode,ItemCode,B表里有Employee字段,两张表里可能有上万条数据,怎么判断A表里每一个EmployeeCode在B表中是否存在,如果不存在请将A表的这个EmployeeCode放入到另外一张表,除了用游标以外,还有没有更好的方法呢?

gyangjing的主页 gyangjing | 初学一级 | 园豆:11
提问于:2016-10-01 21:39
< >
分享
最佳答案
0

Select A.EmployeeCode from A

left outer join B 

on A.EmployeeCode=B.EmployeeCode

Where B.employeeCode is null

这样就得出来A表中有的而B表中没有的EmployeeCode列表了,

游标是最慢的方法,慎用。

严格说起来,大概只有记录数是几十个的,不超过几百个的时候才会用到游标吧,

当然,除非你可以允许运行几个小时或者几天的过程。

 

如非不得已,不用游标。

收获园豆:10
爱编程的大叔 | 高人七级 |园豆:30243 | 2016-10-03 10:03
其他回答(2)
0

select a.* into #tmp from a

left jion b a.id=b.id

where b.id is null

czd890 | 园豆:8556 (大侠五级) | 2016-10-01 23:19
0

分解成2个步骤,先找到不存在B表的A表数据(一个select where语句),然后把这个语句之间增加insert批量插入到B表,最终形成一个insert into xx select xx from xx where xx

Zachary_Fan | 园豆:762 (小虾三级) | 2016-10-05 13:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册