page contents

什么是全文(FULLTEXT)索引?

轩辕小不懂 发布于 2022-03-19 13:59
阅读 853
收藏 0
分类:数据库
3331
Nen
Nen
- 程序员

使用FULLTEXT参数可以设置索引为全文索引。全文索引只能创建在CHAR、VARCHAR或TEXT类型的字段上。在查询数据量较大的字符串类型的字段时,使用全文索引可以提高查询速度。在默认情况下,全文索引的搜索执行方式不区分大小写。但是,当索引的列使用二进制排序后,可以执行区分大小写的全文索引。

MySQL自带的全文索引只能用于数据库引擎为MyISAM的数据表,InnoDB引擎从5.6.4开始也支持全文索引。若是其他数据引擎,则全文索引不会生效。此外,MySQL自带的全文索引只能对英文进行全文检索,目前无法对中文进行全文检索。如果需要对包含中文在内的文本数据进行全文检索,那么需要采用Sphinx或Coreseek技术来处理中文。

目前,在使用MySQL自带的全文索引时,如果查询字符串的长度过短,那么将无法得到期望的搜索结果。MySQL全文索引所能找到的词默认最小长度为4个字符,由参数ft_min_word_len控制。另外,如果查询的字符串包含停止词,那么该停止词将会被忽略。

请先 登录 后评论