当前位置: 首页 > news >正文

mysql全文检索使用

数据库数据量10万左右,使用like '%test%'要耗费30秒左右,放弃该办法

使用mysql的全文检索

第一步:建立索引

首先修改一下设置:

my.ini中ngram_token_size = 1

可以通过    show variables like '%token%';来查看

接下来建立索引:alter  table 表名 add fulltext titlefull (字段名) with parser ngram;

第二步:查询(in boolean  mode类似搜索引擎中的关键词,可以使用+-等操作符)

 select * from 表名 where match(title) against('主题 测试' in boolean  mode) ;

当ngram_token_size = 1 时,(‘主题 测试’)转换为(‘"主题","测试"’)。

 select * from 表名 where match(title) against('主题测试' in NATURAL LANGUAGE MODE) ;

当ngram_token_size = 1 时,(‘主题测试’)转换为(‘"主 题 测 试"’)。

延伸阅读:

全文索引的两种搜索模式

  • 自然语言搜索(也是默认的搜索模式): 不能使用操作符 进行复杂检索.

  • BOOLEAN模式 : 可以通过操作符 进行复杂搜索, 与搜索引擎类似.

1
2
3
4
SELECT * FROM `table` WHERE MATCH (`column`) against('你好世界' IN NATURAL LANGUAGE MODE)# 必须包含'你好', 但不能包含'我的'
SELECT * FROM `table` WHERE MATCH (`column`) against('+你好 -我的' IN BOOLEAN MODE)
http://www.lryc.cn/news/135251.html

相关文章:

  • opencv 进阶17-使用K最近邻和比率检验过滤匹配(图像匹配)
  • Mac Flutter web环境搭建
  • 在外SSH远程连接macOS服务器
  • Dockerfile文件详细
  • C语言学习系列-->看淡指针(3)
  • Java抽象类详解
  • 06-微信小程序-注册程序-场景值
  • 多种方法实现 Nginx 隐藏式跳转(隐式URL,即浏览器 URL 跳转后保持不变)
  • 视频汇聚云平台EasyCVR视频监控管理平台进行SDN转推的操作步骤
  • SQL 语句继续学习之记录二
  • 【Python原创设计】基于Python Flask 机器学习的全国+上海气象数据采集预测可视化系统-附下载链接以及详细论文报告,原创项目其他均为抄袭
  • Unity进阶–通过PhotonServer实现人物选择和多人同步–PhotonServer(四)
  • 【Go 基础篇】Go语言获取用户终端输入:实现交互式程序的关键一步
  • 学习笔记:Opencv实现拉普拉斯图像锐化算法
  • 如何在前端实现WebSocket发送和接收UDP消息(多线程模式)
  • 【微服务】一文了解 Nacos
  • 量子计算对信息安全的影响:探讨量子计算技术对现有加密方法和信息安全基础设施可能带来的颠覆性影响,以及应对策略
  • ajax-axios-url-form-serialize 插件
  • 【AIGC】单图换脸离线版软件包及使用方法
  • 8.19论文阅读
  • HAProxy
  • 基于EasyExcel的Excel读取
  • 链路聚合详解
  • Shell编程学习之if分支语句的应用
  • 2023.8 - java - 泛型
  • 【数据结构练习】链表面试题锦集一
  • 自然语言处理从入门到应用——LangChain:链(Chains)-[通用功能:SequentialChain和TransformationChain]
  • 什么是卷积神经网络
  • 银行数字化转型程度-根据年报词频计算(2012-2021年)
  • 微信开发之一键修改群聊备注的技术实现