首页 > 数据库技术 > 详细

MySql全文检索使用详解

时间:2019-12-11 09:37:50      阅读:60      评论:0      收藏:0      [点我收藏+]

实际项目中经常会有一个字段存储多个值用逗号分隔的场景,当分开查询的时候,使用模糊查询会非常影响效率。mysql提供了全文检索函数可以有效解决这一问题:

1.数据结构

IDCODEMSG
1 1111111,2222222,3333333 数据一
2 4444444,5555555 数据二

2.创建Full Text类型索引

当我们要以CODE为条件使用全文检索查询的时候,首先要给CODE字段创建Full Text类型索引:

create fulltext index index_CODE on table(CODE)

3.查询语句

比如我们要查询CODE中包含2222222的数据

SELECT * FROM table WHERE MATCH (CODE) AGAINST (2222222)

4.特殊情况说明

全文检索函数识别分隔符不仅有“,”还有“-”,实际项目中经常会用到一串编码来标识一条数据(比如商城的订单号),编码中就经常出现“-”,这种情况全文检索也会识别成分隔符,比如:

IDCODEMSG
1 111-1111,222-2222,333-3333 数据一
2 444-4444,555-5555 数据二

解决方案:第一步和第二步不变,查询语句修改为:

SELECT * FROM table WHERE MATCH (CODE) AGAINST ("222-2222")

 

 

MySql全文检索使用详解

原文:https://www.cnblogs.com/superSubfn/p/12020561.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!