为了账号安全,请及时绑定邮箱和手机立即绑定

使用 compairing 2 tables 处理最合适的名称

使用 compairing 2 tables 处理最合适的名称

PHP
开满天机 2023-04-02 10:56:36
我有 2 个 mysql 表:Customers(id,short_name,full_name, contact, address, amount) old_customer_record(id, name, contact, address, amount)在这种情况下,我有超过 2000 条记录,我想确认所有老客户都包含在新表中。但我不能直接检查,因为,一些拼写错误或有点不同, 例如旧的N.IDUNIL RANGAJEEWA和新的N.INDUNIL RANGAJEEWA与联系电话相同,例如071-1234567和0711234567金额可能会在新表中更新。旧表中的地址在旧表中不完整,例如Somewhere,SomeProvince和123/B,Somewhere,SomeProvince我想为此做什么?或者有可能吗?我的代码如下,for ($i=1; $i < 2000; $i++) {$sql = "SELECT * FROM old_customers WHERE id = '$i'";$result = $connect->query($sql);if ($result->num_rows > 0) {    $row = $result->fetch_array();    $name = $row[1];    $sql1 = "SELECT * FROM customers WHERE  short_name LIKE '%$name%'";    $result1 = $connect->query($sql1);    while ($row1 = $result1->fetch_array()) {        $output['data'][] = array(               $row1[0],               $row1[1],               $row1[2],               $row1[3],               $row1[4]             );    }  } // if num_rows }echo json_encode($output);
查看完整描述

1 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

  1. 选择最适合比较表的列。我明白了namecontact最适合那个。Address许多记录可能有不同的形式和金额可能相同(不是唯一的)。

  2. 清理两个表中的电话号码。

    • 删除空格-和其他不需要的字符

    • 检查号码的长度,如果太短,请添加前导零或斯里兰卡的正确区号。

  3. 比较两个关于电话号码的表格。检查旧表中不存在的这些记录,并手动检查它们以查找相似的名称等。2000 条记录仍然不是很大。您可能会检查较小的数字,例如 20。但我不确定您表格的结构和内容。


查看完整回答
反对 回复 2023-04-02
  • 1 回答
  • 0 关注
  • 87 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信