全文搜索 - 关键字长度

时间:2013-06-20 07:01:49

标签: php mysql sql

SELECT * 
FROM t_book AS book
WHERE MATCH (
b_title, author
)
AGAINST (
'med')

运行上面的sql命令后显示空结果,但运行下面的sql代码后。它显示了所有结果。 *当关键字长度大于3个字符时显示结果ex:'medi'显示结果

SELECT * 
FROM t_book AS book
WHERE MATCH (
b_title, author
)
AGAINST (
'medical')

请你解释一下。 感谢。

1 个答案:

答案 0 :(得分:2)

搜索通常有最小字长。 MySQL的默认值是关键字长度3.也许你的MySQL管理员指定了一个更大的最小字长?如果是这样,匹配查询中将不会使用3个字的字符。

您可以在MySQL配置文件的以下部分中找到该设置:

[mysqld]
ft_min_word_len=3

您可以在此处详细了解:http://dev.mysql.com/doc/refman/5.0/en/fulltext-fine-tuning.html