第一步:
配置文件my.ini(Windows 10默认路径: C:\ProgramData\MySQL\MySQL Server 8.0) 中增加如下配置项,同时重启MySQL80 服务:
[mysqld]
ngram_token_size=2 #这句话可以使中文按2个文字切词,进行全文索引
第二步:
以管理员身份运行命令符提示,重启MySQL80
net stop MySQL80
net start MySQL80
第三步:
在创建的全文索引语句后加入with parser ngram(with parser ngram就是使支持中文的全文索引)
create table class(
id int,
name varchar(128),
teacher varchar(64),
comment varchar(1024),
fulltext index
index_comm(comment) with parser ngram
);
插入数据测试
insert into class
values(1,'一班','王老师','他是王老师'),
(2,'二班','张老师','他是张老师'),
(3,'三班','李老师','他 是李老师');
查询语句
select * from class where match(comment) against('老师');
select * from class where match(comment) against('他是王');
select * from class where match(comment) against('王老');
但是如果只查询一个字是查询不到的,因为切词时按照两个汉字切