Office中国论坛/Access中国论坛

标题: 求助!合并两个表的记录,有相同的记录保留其中的一条记录 [打印本页]

作者: GAOZHONG    时间: 2008-9-6 15:26
标题: 求助!合并两个表的记录,有相同的记录保留其中的一条记录
我有一个数据库,并做了备份,因特殊原因,在源库及备份库的表中都录入了新的数据,现要将两个表的数据合并,但对重复记录只保留其中的一条,用宏或代码如何操作,请各位大虾指教。

[ 本帖最后由 GAOZHONG 于 2008-9-6 15:33 编辑 ]
作者: zyp    时间: 2008-9-6 16:18
如果你两个表中的字段比较多,且所谓相同的记录是指每个字段的值都相同才视为相同的话,处理起来有点比较麻烦,如果是我,可能会采用VBA进行处理,即遍历旧表的每一条记录,并在新表中查询是否有与这条记录完全一样的,有的话不动作,没有的话则将此记录新增至源表中。

另外,也可以采取借助第三表的方法来实现,就是采用联合查询(因为联合查询默认情况下相同记录只显示一条的):设源表为tb1,备份表为tb3,新建第三表为tb_new,三个表的结构完全一样,先建立下面的联合查询命名为Q1:
SELECT * FROM tb1
UNION
SELECT * FROM tb2
再建立下面的追加查询
INSERT INTO tb_new SELECT * ROM Q1

接下来要做的将是将tb1删除或改名,然后将tb_new改为tb1;或者将tb1中的数据删除,然后将tb_new的数据追加进tb1也可




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3