mysql 中文字段名_MySQL全文索引教程 | 入门推荐

fc9e6c3aadbb308c1665eb98f752746a.gif点击上方蓝色字关注我们~ e73e8ae3f123cf068c2a5ee2229af5ce.png 为什么要用全文索引

我们在用一个东西前,得知道为什么要用它,使用全文索引无非有以下原因:

  • like查询太慢、json字段查询太慢(车太慢了)

  • 没时间引入ElasticSearch、Solr或者Sphinx这样的软件,或者根本就不会用(无法将五菱宏光换成兰博基尼,即使有兰博基尼也不会开)

  • 加索引、联合索引啥的都已经慢得不行了(限速80,车顶盖都卸了也只能开到30)

  • 为了提升一下自己的格调(人家问你有没有开过法拉利,你说开过肯定更有气质一点)

e73e8ae3f123cf068c2a5ee2229af5ce.png 什么是全文索引

简单的说,全文索引就相当于大词典中的目录,通过查询目录可以快速定位到想看的内容。


全文索引通过建立倒排索引来快速匹配文档(仅在mysql5.6版本以上支持),全文索引将连续的字母、数字和下划线当做一个单词,分割单词一般用空格/逗号/句号。

MySQL的全文索引支持以下3种查询模式:

  • 自然语言模式(IN NATURAL LANGUAGE MODE)
    通过MATCH AGAINST 传递某个特定的字符串来进行检索

  • 布尔模式(IN BOOLEAN MODE)
    支持操作符,例如+表示包含,-表示不包含

  • 扩展模式(WITH QUERY EXPANSION)
    相当于自然语言模式下的一个扩展,执行两次检索,第一次使用给定短语检索,第二次是结合第一次相关性比较高的行进行检索.

下面教大家如何创建全文索引,并创建测试数据演示三种查询模式的使用。

e73e8ae3f123cf068c2a5ee2229af5ce.png 如何创建全文索引

1. 建表时指定

CREATE TABLE light_weight_baby (     id INT AUTO_INCREMENT NOT NULL PRIMARY KEY,     title VARCHAR(200),     content TEXT,   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值