我正在构建一个简单的搜索工具。
这个想法是它将搜索代码、标题、描述和类别的字段。
搜索类别和代码非常简单,因为它只是一个单词 (%code%)。
但是,我不确定如何分解标题和描述来搜索用户输入的任何关键字?
有没有人对此有什么好的技术?
谢谢。
最佳答案
鉴于信息量很少:
如果您使用 MySQL 的 MyISAM 存储,您可以启用 FULLTEXT 索引并对其使用 FULLTEXT 搜索;见this link有关这方面的更多信息。
但是,如果您正在使用 InnoDB(我也在我的数据库中使用它),则不能直接在 MySQL 中启用它。
您有几个选择;要么您自己拆分关键字并搜索与这些关键字中的一个或多个匹配的条目,然后检查有多少关键字与排序匹配。您也可以将其包含在查询中,但随后您需要针对每个关键字进行查询,并将这些结果与父查询相结合。
另一个选项是使用 SOLR 服务器并使用 php solr_client(参见 the php manual on it),这是我最终选择的选项,因为性能和灵 active 。 SOLR 服务器将在给定一些(相当简单的)配置文件的情况下为数据库编制索引,并允许在任何索引字段上进行全文搜索。有关设置 SOLR 服务器的更多信息,请参阅 SOLR 手册:tutorial .
当然,还有许多其他方法和工具。以上只是我过去使用过或仍在使用的一些(我很高兴使用 solr,但我想那是个人的东西)。
祝你好运。
关于mysql - 搜索功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6491907/