连接列上的FULLTEXT索引是否会加快MySQL中的查询速度?

时间:2016-03-01 09:53:38

标签: mysql join full-text-indexing

我是这个全文索引的新手,我所知道的是全文用于索引text或varchar列以快速搜索。

我还读过全文索引仅用于(MATCH ... AGAINST)synthax?这是真的吗?

我的问题是:如果我在列上使用全文索引,是否会加快查询速度?

查询是:

SELECT * FROM table1 a INNER JOIN table2 b ON a.text = b.text;

为两个表的列文本设置了全文索引。

感谢。

最诚挚的问候,

1 个答案:

答案 0 :(得分:0)

关于使用全文索引的问题的第一部分在这里得到解答: http://dev.mysql.com/doc/refman/5.5/en/fulltext-search.html

  

使用MATCH()... AGAINST语法执行全文搜索。

第二部分是基于具有全文索引的字段的两个表的内连接。它可以通过添加到表table1和table2字段 texthash 来解决。填充和维护此哈希值(通过应用程序代码或mysql触发器)是必要的。 您可以在此字段中使用通常的btree索引,并且您的sql-query将被修改为以下版本并快速执行:

SELECT * FROM table1 a INNER JOIN table2 b ON a.texthash = b.texthash;