从基于表的查询中排除数据对?

eiee3dmh  于 2021-08-01  发布在  Java
关注(0)|答案(1)|浏览(413)

我有一个庞大而混乱的数据库,里面有很多重复的设施。地址是这样随意输入的,我将进行许多查询,以确定可能的重复。我的目标是让每个查询识别出可能的重复项,然后一个人实际地遍历列表,并将每个配对标记为“不重复”或“可能重复”
当有人将设备对标记为不重复时,我想将该数据对记录在表中,这样当其中一个查询返回该对时,它就会被排除。我不知道该怎么做。我目前正在使用msaccess进行sql查询,并且具有基本的visualbasic知识。
运行查询1以根据城市和公司名称查找重复项。它带回设施1和2,3和4,5和6是可能的重复。前两个配对是重复的,我需要去修复,但那5和6确实是分开的设施。我单击此处以记录设施5和6不是重复的,这将数据记录在一个表中。当查询1再次运行时,它不会返回5和6可能是重复的。
作为参考,地址副本看起来像这样,这就是为什么需要有多个查询

  1. Frank's Garage, 123 2nd St
  2. Frank's Garage LLC, LLC, 123 Second st
  3. Frank's Garage and muffler, 123 2nd Street
  4. Frank's, 12 2nd st

非常感谢您的帮助!

zlhcx6iw

zlhcx6iw1#

我知道解决这个问题的唯一方法是创建一个公司名称主表,并将这个表pk与原始表中的记录相关联。这将是一个困难和繁琐的过程,以审查记录和消除重复从主和关联剩余pk的重复组的原始记录(如您所发现的)。
从原始表创建不同公司和地址数据的主表。包含自动编号字段以生成密钥。连接公司/地址字段上的表,并使用此键更新原始表中的字段。在原始表中有另一个字段以接收替换外键。
在主表中有一个数字字段(replacementpk)。对记录进行排序和审阅,并输入要为“公司/地址副本”组保留的密钥。在原始关键字字段上建立一个查询连接表,用主关键字中选定的replacementpk更新原始表中的newfk字段。
当一切看起来都很好时:
从原始表中删除公司、地址和原始fk字段。
从主键与replacementpk不匹配的主键中删除记录。

相关问题