第一步:

配置文件my.ini(Windows 10默认路径: C:\ProgramData\MySQL\MySQL Server 8.0) 中增加如下配置项,同时重启MySQL80 服务:

[mysqld]

ngram_token_size=2        #这句话可以使中文按2个文字切词,进行全文索引

【MySQL8】中文分词支持全文索引_全文索引

第二步:

以管理员身份运行命令符提示,重启MySQL80

net stop MySQL80

net start MySQL80

第三步:

在创建的全文索引语句后加入with parser ngram(with parser ngram就是使支持中文的全文索引)

`

1. create table class(

2. id int,

3. name varchar(128),

4. teacher varchar(64),

5. comment varchar(1024),

6. fulltext index

7. index_comm(comment) with parser ngram

8. );


`

插入数据测试

`

1. insert into class

2. values(1,'一班','王老师','他是王老师'),

3. (2,'二班','张老师','他是张老师'),

4. (3,'三班','李老师','他 是李老师');


`

查询语句

`

1. select * from class where match(comment) against('老师');

2. select * from class where match(comment) against('他是王');

3. select * from class where match(comment) against('王老');


`

【MySQL8】中文分词支持全文索引_全文索引_02

     但是如果只查询一个字是查询不到的,因为切词时按照两个汉字切

【MySQL8】中文分词支持全文索引_重启_03