【发布时间】:2014-06-26 05:54:48
【问题描述】:
我有一个保存产品名称的表。我想执行一个选择查询语句,其中 60% 或更多的结果匹配
例如:如果有人输入“verifone 500”,
那么产品:
1) verifone vx500
2) verifone5
3) verifon00
4) verifone 50"
应该匹配,因为它们与搜索到的产品有 60% 或更多相同。我试过这段代码
select `product_name` from product_data where `product_name` LIKE '%verifone 500%'
但没有得到想要的结果。
希望任何机构可以提供帮助?
【问题讨论】:
-
你可以将搜索词减少到 60%,所以 `LIKE '%verifon%'。
-
如果您的数据库引擎支持 levenschtein 距离,您可以使用它。阅读更多:en.wikipedia.org/wiki/Levenshtein_distance