mysql8使用自带全文索引(带中文分词)

  1. 修改配置文件:
    vim /etc/my.cnf
    [mysqld]
    ngram_token_size=2
  2. 创建表:
    create table test(
    id int(11) not null primary key auto_increment,
    name varchar(100) not null comment '工商名',
    brand varchar(100) default null comment '品牌名',
    en varchar(100) default null comment '英文名',
    fulltext key (name,brand,en) with parser ngram
    )engine=innodb default charset=utf8;
    insert into test (name,brand,en) values ('芜湖美的厨卫电气制造有限公司','aa','wh');
    insert into test (name,brand,en) values ('北京凡客尚品电子商务有限公司','aa','ef');
    insert into test (name,brand,en) values ('凡客诚品(北京)科技有限公司','aa','dfd');
    insert into test (name,brand,en) values ('瞬联讯通科技(北京)有限公司','aa','sdfs');
    insert into test (name,brand,en) values ('北京畅捷通讯有限公司','aa','wsdh');
    insert into test (name,brand,en) values ('北京畅捷通支付技术有限公司','aa','df');
    insert into test (name,brand,en) values ('畅捷通信息技术股份有限公司','aa','whdfgh');
    insert into test (name,brand,en) values ('北京畅捷科技有限公司','aa','dgdf');
    insert into test (name,brand,en) values ('中国航天工业科学技术咨询有限公司','aa','whffgh');
    insert into test (name,brand,en) values ('北京·松下彩色显象管有限公司','aa','wfghfgh');
  3. 测试:
    select  *  from  test  where  match  (name,brand,en)  against  ('北京');
posted @ 2020-03-18 17:25  netcorner  阅读(3851)  评论(0编辑  收藏  举报