php - 如何编写搜索脚本以返回最接近搜索文本/关键字的文本?

标签 php mysql search

我正在 PHP 中创建搜索功能。每当我使用查询进行搜索时,它都会返回与搜索的关键字/文本类似的文本。我想输出最接近搜索关键字的文本/数据。

例如:如果我搜索“omkar”关键字,则查询将必须返回“omkar”的所有记录以及最接近的文本,例如“oskar”、“onkar”、“omkr”等。

我正在使用 PHP 进行下一个 MySQL 查询:

$que = mysql_query("select * from table where name like '%{$name}%'"

此代码可以工作并执行类似的单词/文本,但我也想显示最接近的单词。

最佳答案

我会为此使用“全文搜索”索引。它的设计目的完全相同。

参见: -https://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html -https://dev.mysql.com/doc/refman/5.1/en/fulltext-boolean.html

除了性能之外,它还为您提供了用于构建查询的附加语法,例如:

mysql> SELECT * FROM articles WHERE MATCH (title,body)
    -> AGAINST ('+MySQL -YourSQL' IN BOOLEAN MODE);

关于php - 如何编写搜索脚本以返回最接近搜索文本/关键字的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32907299/

相关文章:

php - 是否可以在action.php中自动插入数据?

mysql - 将 1 作为数字保存到 ENUM ('1' ,'0' ) 字段设置值为 0

node.js - 在字符串列表中查找最相似的文本

c++ - 有一对 <string, string> 如何查找它是否属于 map<string, string> 中的某个对?

php - 如何清理用户提交的 url?

php - 修复 symfony2.8 弃用会影响我的数据库

php - 从数据库中获取一个值,并使用 for 循环填充 php 中的下拉菜单

javascript - 卡住 jquery 加载上最后查看的位置

php - UPDATE 字段中包含逗号(,)的 MySQL 表

javascript - 扫描JS数组最快的方法是什么