Php 通过比较两个表加工最适合的名称
我有两个mysql表:Php 通过比较两个表加工最适合的名称,php,mysql,Php,Mysql,我有两个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
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
金额可在新表中更新。
旧表中的地址在旧表中不完整,例如,某地,某省和123/B,某地,某省
我想为此做什么?还是有可能?
我的代码如下:
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);
请帮帮我,谢谢
选择最适合比较表的列。我认为这个名字和联系方式最合适。地址可能有不同的形式,金额可能相同,因为许多记录不是唯一的
清理两个表中的电话号码
删除空格,-和其他不需要的字符
检查数字的长度,如果太短,则添加前导零或斯里兰卡的正确区号。
比较两个电话号码表。检查这些旧表中不存在的记录,并手动检查它们,寻找类似的名称等。2000条记录的数量仍然不多。您可能会选择较小的数字,例如20。但我不确定你们桌子的结构和内容
他们的账户呢?他们使用某种电子邮件地址登录吗?@Kevin不,他们不登录系统,只维护一个记录。这是一个类似贷款金额的记录。这对我很有帮助,因为这两个表中的电话号码都需要清理。