查询来识别对一组数据的更改?

我有两个报告。 一个是三个星期前产生的,另一个是前几天。 这些报告共享相同的字段(姓氏,名字,SSN等),但数据明显不同。 我们编辑了特定的字段。 客户的SSN可能已被编辑以反映数据input错误。 他们的地址信息可能已经更新。

我们还没有安装审计表作为我们数据库的一部分,所以我们需要确定另一种方法来确定报告之间的变化。 有几个明显的问题。

1)当我们将数据导出到Excel中时,logging标识不被保留。 一个客户可能有多个logging来说明不同的地址,所以他们的SSN不会是唯一的。 2)我们不仅需要识别这些变化。 我们需要对它们进行分类。 如果对SSN进行了更改,请与地址更改分开报告。

所以,如果我将这两个文件导入到数据库中,是否有一个查询可以解决这个问题? 我和我的团队已经有一段时间集思广益了,我们什么都没有想到。 没有唯一的loggingID,我们打算连接哪个字段?

如果您希望我对问题的任何部分都更加具体,请告诉我,我将尽我所能来帮助您。

这些报告位于从MS Access 2013中运行的查询中导出的Excel文件中。

谢谢。

所以当你输出到Excel时,你的报告没有PK。 假设你不能恢复它,除非有别的东西可以量化为PK,否则你是不走运的。

如果我是你,我会做什么是导入两个报表文件作为单独的表:table_old table_new

然后我会做一个减去声明,以消除确切的副本:

select * from table_old minus select * from table_new 

这将显示您的旧报告中存在的logging,但已被删除或修改。 那么你可以做交谈

 select * from table_new minus select * from table_old 

这会给你更改和/或新的/删除的logging。

这就是说,对logging进行分类的唯一真正方法是将SSN纳入其中。 没有PK会使这是一个非常不准确的科学,但是在失去PK的时候,你将不得不忍受这个接近而不是确切的。