You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

插入数据时检测相似重复公司名称的实现问题求助

插入数据时检测相似重复公司名称的实现问题求助

大家好,我现在碰到一个公司名称查重的需求,想请各位帮忙看看怎么解决:

我的数据库里有一条公司名称记录是 "Moon Light",现在希望实现:当用户输入类似 "PX Moon Light" 或者 "Moon Light Corp" 这类内容时,系统能检测到这和已有记录高度相似,从而拒绝插入。

我自己从其他帖子里找了几种方法逐一尝试,但都没达到预期效果,具体尝试的代码如下:

首先获取用户输入的名称:

$name = $_POST['name']; // 比如这里用户输入的是 'PX Moon Light'

然后尝试了以下几种SQL查询语句:

  • SELECT name FROM tbl_company WHERE name REGEXP '$^$name' LIMIT 1
  • SELECT name FROM tbl_company WHERE name REGEXP '$^$name^$' LIMIT 1
  • SELECT name FROM tbl_company WHERE name REGEXP '^$name^' LIMIT 1
  • SELECT name FROM tbl_company WHERE name REGEXP '$name' LIMIT 1
  • SELECT name FROM tbl_company WHERE name LIKE '%PX Moon Light%' LIMIT 1

之后执行查询并判断:

$res = mysqli_query($conn,$sql);

if(mysqli_num_rows($res)>0) {
    echo 'rejected, possible similar data';
}

但这些SQL语句都没能正确检测出相似的公司名称,想请教各位有没有合适的解决思路或者正确的查询方法呀?

备注:内容来源于stack exchange,提问作者Bapholin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 08:29:38