日期:2014-05-17  浏览次数:20396 次

求助:合并两个表的问题!!!!!!!【有点意思噢】
场景:门禁刷卡记录

表A 表B

A是实时更新的,每一次刷卡操作,都会在A中新增一条记录。

门禁的电路板上内存保存有刷卡记录,当进行“提取数据”操作时,会从内存读到 B 中,并将内存清空

问题:

由于通信等问题,A和B都会有个别记录缺失的情况,缺的记录一般来说不会是同一条。

目的:两个表互相补充,使记录尽量完整,最终保存于B (从A中查找B中没有的记录,并添加到B中来)


PS:
  1、每一条记录都有一个唯一的键值ID
  2、表A比表B多几个字段,不过是无关紧要的,可以空着。
  3、表A和B中的记录量已经很大


思路: 可不可以创建一个触发器,在每一次进行“提取数据”操作时,从A中查找B中没有的记录,将其插入到B中来。



对MSSQL还不是很熟,忘高手指点,小弟分数有限,尽量多给!


------解决方案--------------------
select xx,xx,... into B from A a
where not exists (select 1 from B where xx=a.xx and xxx)