使用SQL搜索时更高级的搜索引擎功能

时间:2014-10-31 13:08:25

标签: php mysql sql search full-text-search

我必须在包含数千条评论(最多200个字符)的MySQL数据库中“搜索”传统的“搜索字段”(就像在大多数网站上一样)。我尝试使用SQL,如:

SELECT * FROM comments  WHERE text LIKE 'Bonjour monsieur'

但是,为了提供良好的搜索功能,我们必须首先使用Bonjour monsieur显示结果,然后使用Bonjour和{{1}显示结果(但可能不是另一个旁边的那个),然后 monsieurBonjour等的结果。

此外,还需要不区分大小写的搜索,并且可以将许多类似的内容(Monsieur é e视为相同的搜索字母)等等。

为了给用户提供良好的搜索体验,有许多类似的小东西需要编码。

PHP / MySQL中是否有内置功能来提供这些“搜索引擎”功能,还是我必须从头开始编码?

注意:这不是一个主题,询问“什么是......的具体工具”(我知道这些问题通常被认为是非正式的),我只是想知道这些功能是否已经存在,或者如果我必须从头开始编写所有内容。

1 个答案:

答案 0 :(得分:0)

如果您使用的是MySQL 5.1,则可以安装一个词干分析器插件。

http://forge.mysql.com/projects/project.php?id=215 http://forge.mysql.com/projects/project.php?id=42