首页 文章

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

提问于
浏览
1

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

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

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

查询是:

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

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

谢谢 .

最好的祝福,

1 回答

  • 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;
    

相关问题