MySQL全文索引

新建全文索引

-- title content
alter table `t_article` add fulltext index fulltext_title_content(`title`,`content`) WITH PARSER ngram;

中文全文索引

MySQL 5.7.6之前 全文索引只支持英文全文索引
MySQL 5.7.6开始 MySQL内置了ngram全文解析器 用来支持中文,日文,韩文进行分词

全文检索模式

相关性越高 排序就越在前面

--   + RDBMS 必须存在 -  MySQL必须不存在
select * from full_text
where 
match(content) against( '+RDBMS -MySQL' IN BOOLEAN MODE);


--   包含Database的要比不包含Database的记录的 相关性更低
select * from full_text
where 
match(content) against( '+MySQL ~Database' IN BOOLEAN MODE);


-- 包含123456的行要比包含Database 相关性高
select * from full_text
where 
match(content ) against('+MySQL +(>123456<Database)' IN BOOLEAN MODE);

-- 查询包含以1开头的单词的记录,如apple、apples、applet。
select * from full_text
where 
match(content ) against('appl*' IN BOOLEAN MODE);
posted @   Rorchachl  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示