当前位置:网站首页>MySQL全文索引
MySQL全文索引
2022-08-09 09:44:00 【Petrochor】
MySQL在使用LIKE进行模糊匹配查询的时候,字段索引会失效,因此在数据量较大的情况下,LIKE查询效率极低,就可以使用全文索引(FullText)进行优化。
全文索引(FullText)是将存储于数据库中的整本书或整篇文章中的任意信息查找出来的技术。它可以根据需要获得全文中有关章、节、段、句、词等信息,也可以进行各种统计和分析。
MySQL还提供了支持中文、日文和韩文的内置全文解析器ngram。
创建全文索引
创建表时创建索引
CREATE TABLE `articles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NULL DEFAULT NULL,
`content` text NULL DEFAULT NULL,
FULLTEXT INDEX `content`(`content`) WITH PARSER `ngram`
) ENGINE = InnoDB;为现有表添加索引
ALTER TABLE `articles` ADD FULLTEXT INDEX `content`(`content`) WITH PARSER ngram;删除全文索引
ALTER TABLE `articles` DROP INDEX `content`;使用全文索引
自然语言全文索引
将搜索字符串解释为自然人类语言(自有文本)中的短语,没有特殊运算符,但双引号(“)除外。
EXPLAIN SELECT * FROM `articles` WHERE MATCH(content) against ('PHP' in NATURAL LANGUAGE mode);布尔全文索引
使用此修饰符,某些字符在搜索字符串中的单词的开头或结尾处具有特殊含义。在以下查询中, +和-运算符分别表示必须存在或不存在单词才能进行匹配。
EXPLAIN SELECT * FROM `articles` WHERE MATCH(content) against ('PHP' IN BOOLEAN MODE);边栏推荐
猜你喜欢
随机推荐
缓存击穿,缓存穿透,缓存雪崩的解释和对应的一些解决方案
Do you know the principles of test cases and how to write defect reports?
6.Map接口与实现类
EndNote User Guide
Tigase插件编写——注册用户批量查询
.ts 音频文件转换成 .mp3 文件
seata处理分布式事务
Ontology Development Diary 03 - When debugging is in progress
3.List interface and implementation class
Go-接口的那些事
MySQL索引、视图、设计三范式,通俗易懂,不可错过!
快速解决MySQL插入中文数据时报错或乱码问题
秒拍app分析
[Machine Learning] Detailed explanation of web crawler combat
Thread,Runnable,ExecutorService线程池控制下线程量
Anti App so层对抗分析
程序环境和预处理
3.练习Thread
OSCS开源软件安全周报,一分钟了解本周开源软件安全大事
时间复杂度和空间复杂度



![[Machine Learning] Basics of Data Science - Basic Practice of Machine Learning (2)](/img/9f/5afabec1b9ab1871130c8bf1bae472.png)





