php - 更好的 SQL 搜索引擎

标签 php mysql sql search search-engine

我有一个基本的 SQL 搜索引擎,如下所示:

SELECT * FROM table_name WHERE row_name LIKE '%$keyword%'

使用它作为基本搜索引擎效果很好,但是如果一个人拼写错误或输入错误,它就根本不起作用。用户查询需要与数据库中的条目的至少某些部分完全匹配。我的问题:有没有办法解决这个问题,并且如果有人拼写错误,仍然返回结果。让计算机返回最佳的搜索结果,而不是不返回任何内容。我真的希望查询看起来像

SELECT * FROM table_name WHERE row_name MOSTLY LIKE '%$keyword%'

没有 MOSTLY LIKE 运算符,但我想知道我会用什么来模拟类似的东西。 注意:变量$keyword是用户输入

最佳答案

如果您使用的是 MSSQL,请查找 SOUNDEX。

关于php - 更好的 SQL 搜索引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22547589/

相关文章:

php - header ("Expires: 0") 是做什么的?

php - 我可以在上传时使用函数 md5_file 命名文件而不与名称冲突吗?

PHP PDO MySQL 不输出结果但加载其余页面?

mysql - DataGridView对应的Column...用MySQL

php - 寻求优雅的方式从字符串中删除 544 个单词的任何实例

c# - MySql 更新查询在 asp.net 中不起作用

c# - SQL c# 确定 sql server 的类型

sql - 将 varchar 值转换为 int 时转换失败

python - SQLAlchemy: WITH new_values (id, field) as ( 值 (..., ...) )

sql - TRIGGERS 中的异常处理(对于每一行)