MySQL全文搜索禁用短词删除

时间:2011-04-11 12:11:59

标签: php mysql full-text-search hosting

我在Dreamhost上使用共享托管。如何使用mysql全文搜索长度小于3的短字?无论如何我可以直接在php中做到吗?

感谢。

3 个答案:

答案 0 :(得分:1)

如果您只使用3个或更少的字符串搜索,则无需进行全文搜索 - 您只需要:

select * from table where field LIKE'%xxx%'

如果您正在进行全文搜索,那么您的搜索字符串将超过3个字符,这将取消对上述内容的需求。

SO - 您是否正在搜索3个字符或更少的字符串?

答案 1 :(得分:1)

全文适用于4个字符或更少的字符串,但默认情况下不行。你需要通过在my.cnf文件中更改ft_min_word_len = 2(如果你想索引2个char字)来告诉MySQL索引它们。

然后你需要重新启动MySQL,并在有问题的表上重建全文索引。

有些想要索引的单词(例如IT)可能会出现在停用词列表中。谷歌搜索将告诉你如何解决这个问题。 IIRC只是将它们添加到您想要从默认禁用词列表中索引的单词的文本文件中。

答案 2 :(得分:0)

你必须在你的查询中使用LIKE'%xxx%' - 全文不能用于< 4 chars也必须是myisam表...