当前位置:首页 > SQL > 正文内容

mysql全文索引代替like查询

高老师5年前 (2021-11-09)SQL3216

之前博客的题目数据一直使用z_blog的模糊匹配,一直使用like %tiile%,有时候直接导致服务器CPU100%,于是为了走上索引改为左匹配,like title %,虽然解决了搜索性能问题,但是没有like %title%效果好,很多人搜不到。于是改为全文索引。

ALTER TABLE `think_course_question` ADD FULLTEXT  INDEX `uni_question_name` ( `question_name` ) WITH PARSER `ngram`;

添加全文索引并使用支持中文分词

mysql中配置分词数

ngram_token_size=2

mysql中配置最少搜索词数

ft_min_word_len=5

使用波尔模式,模仿like %title%

SELECT * FROM think_course_question WHERE MATCH ( question_name ) AGAINST ( '+职能型销售组织' IN BOOLEAN MODE)  LIMIT 10

为什么不用自然语言的原因是因为大部分搜题的人都是复制一整段。

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/358.html

分享给朋友:

“mysql全文索引代替like查询” 的相关文章

mysql group分组排序

mysql group分组排序

下面的是商品数据表,id是主键,catename是分类,titile是标题,price是价格,现在要求计算每种分类下的商品平均价格.id     catename       &n...

Mysql子句查询陷阱

Mysql子句查询陷阱

例如我们需要查询商品表中每个分类中商品id最大的记录,并且显示商品价格以下是表结构:id     catename         title &nb...

Left join,​Right join,​Inner join的区别实例讲解

Left join,​Right join,​Inner join的区别实例讲解

Left join:即左连接,是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。Right join:即右连接,是以右表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将右表...

 mysql视图有什么用, mysql视图的学习

mysql视图有什么用, mysql视图的学习

我们从一个结果集中查询信息一般都是select *  from (select...),每次都要编写from (select...)非常麻烦,于是我们将结果集保存起来,这就是视图的便利。创建视图的命令为:create   view  &nb...

mysql表视图管理语句

mysql表视图管理语句

1.查看所有表,包括视图表,show  tables;2.查看表结果,包括视图表,desc  表名3.查看建表过程,show   create   table  表名;4.查看建视图过程,show   create   view...

 php mysql 分页优化,mysql limit优化,mysql offset优化,mysql 最快的分页方法

php mysql 分页优化,mysql limit优化,mysql offset优化,mysql 最快的分页方法

(1).首先我们需要了解limit分页的工作流程demo:  SELECT * FROM table LIMIT 10000,5 通常我们会认为以上SQL会从10000条后面取5条,正确的是取出10005条,然后再抛弃前...