MySQL 全文检索

MySQL 全文检索注意事项

1.创建表类型为MyISAM的表

2.检索词语的最小长度

检索词语的最小长度默认为4,通过SHOW VARIABLES LIKE'ft_min_word_len'命令可查看。

如要修改默认值,在my.ini中,加入一行ft_min_word_len = 2,(Linux 下是 /etc/my.cnf 文件 ,在 [mysqld] 后面加,重启命令为service mysqld restart),重启即可。


检索词语的最小长度为4时,此时通过“中国”检索是检索不到结果的。

修改后,要重建索引,原来的表才能生效,语句为:

REPAIR TABLE table_name QUICK;

3.词语出现频率

如果某词语在所有记录中出现的比率大于50%,则通过此词语进行检索时检索不出结果。

除非使用IN BOOLEAN MODE修饰语,如:

SELECT * FROM news WHERE MATCH(content) AGAINST('中国' IN BOOLEAN MODE)