Mysql全文搜索查询执行

标签 mysql search full-text-search

大家好

只是想知道以下查询的区别:

select*, MATCH ( thread_title, first_post ) AGAINST ('apple' IN BOOLEAN MODE) as relevance from posts where MATCH(`thread_title`, `first_post`) AGAINST('apple'  IN BOOLEAN MODE)  ORDER BY relevance DESC

select*, MATCH ( thread_title, first_post ) AGAINST ('apple' IN BOOLEAN MODE) as relevance from posts   ORDER BY relevance DESC 

已编辑

实际上,两者都在顶部获得了正确的结果,第二个获得了更多的结果,而第一个仅获得了正确的结果。第二个是需要很多时间来执行,第一个要快得多。不知道为什么。

最佳答案

第一个查询将只返回与您设置的限制匹配的行的结果(即那些在 thread_title 或 first_post 中包含 apple 的结果),而第二个查询将返回所有行,无论它们是否包含是否匹配您的搜索查询。

关于Mysql全文搜索查询执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5743176/

相关文章:

Mysql 选择 N 个重复项,省略 1 个重复项

mysql - 从外网访问mysql服务器(xampp)

java - 将 arraylist 的值插入数据库

php - 你如何在 while 循环之前回显内容?

java - 在网页中搜索..Android

parsing - 出于地理编码目的解释文本输入的最佳方法是什么?

Azure 搜索 - 多对多索引

algorithm - 用于在类别的二维网格中搜索坐标的最佳数据结构

mysql - 使用 scandic 字母的全文搜索会使 MySQL 崩溃

php - 如何用php和mysql制作全文搜索引擎?