MySQL / PHP - 作为重复匹配的部分比较

时间:2014-04-21 11:00:16

标签: php mysql

将部分数据与完整记录作为可能的重复匹配进行比较的最佳方法是什么?

例如,假设您有一个存储联系信息的客户数据库,例如名字,姓氏,地址,城市,邮政编码,并允许每条记录有多个电话号码。

目标是找到所有可能的“匹配”,即某些数据非常接近匹配,或者与输入的信息完全相同。

示例:

Real Data Contains
First Name: Robert
Last Name: Smithson
Phone Numbers:  1111231234, 1111241235
Zip/Postal: 90210

我希望该记录显示在结果中,而不仅仅是完全匹配 - 但如下所示:

  • Rob Smith
  • 90211
  • 90120
  • Bob Ithson = Bobby Son

现在我理解上面的名称变化,我需要一个单独的表格,我可以用来智能地区分名称变化/部分,但目标是有一些可以合理确定的模糊逻辑记录的重复性和/或返回给定部分数据的最可能结果。

我考虑过以下方法:

  • 哈希记录并将其用于相对比较:不会因为相对于存储的数据而变化太大而无法正常工作。
  • 存储在char数组中的记录中的字符用于比较(也就是说,有多少AB等):这会产生一个问题,因为正在寻找的内容之间的差异可能不会根据角色对整个光谱进行分析。

我正在寻找使用PHP以编程方式处理此问题的其他可能性。

数据库后端将在MySQL中,并且还没有结构。

1 个答案:

答案 0 :(得分:0)