gpt4 book ai didi

PHP模糊搜索2列并返回最佳匹配

转载 作者:行者123 更新时间:2023-11-29 19:07:54 31 4
gpt4 key购买 nike

我有一个需要解决的搜索难题,但我的技能很少,所以如果我没有很好地解释这一点,我深表歉意。为了尝试演示该问题,下面是两个数据库列中的数据示例:

  | Start address        | End address          |
-----------------------------------------------
1 | Essex | Moortown, Leeds |
2 | Place A, London | Place B, Manchester |
3 | Townsville, Essex | Leeds Town Hall |
4 | Essex Trading Estate | Another Leeds Estate |
5 | Somewhere, Devon | Yeoville |
6 | ... | ... |

例如,如果用户在相应的表单字段中提交“21 Some Street, Essex”和“Leeds some place”,我需要搜索 MySQL 数据库并拉回前 X 个最佳匹配项,其中此示例将是第 1、3 和 4 行,因为它们都在第一列中包含埃塞克斯,在第二列中包含利兹。

我可以看到PHP有两个函数similar_text()和levenshtein(),这可能会有所帮助,但我不确定哪个更适合这种部分匹配以及如何获得最准确的搜索结果。我在 MySQL 中没有发现任何类似的东西。

请问有这方面经验的 friend 可以指点一下吗?

干杯

安迪

最佳答案

您可以使用简单的 like 函数来获取所需的搜索输出。要克服区分大小写的问题,请使用小写或大写。

select start_address,end_address from table where lower(start_address) like '%urfirststring%'
and lower(end_address) like '%ursecondstring%'

也在较低的位置传递您的搜索字符串。

关于PHP模糊搜索2列并返回最佳匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43342887/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com