MySQL MATCH AGAINST功能

时间:2010-06-01 20:26:30

标签: mysql match

目前我有以下查询...

SELECT id, 
       LOWER(title) as title, 
       LOWER(sub_title) as sub_title
  FROM ebay_archive_listing
 WHERE MATCH(title, sub_title) AGAINST ("key" IN BOOLEAN MODE)

但是,找不到title包含单词“key”的行。 “key”是根据一组关键字动态生成的,因此有时它包含+和 - 符号。

1 个答案:

答案 0 :(得分:2)

MySQL的默认全文索引设置不会索引或匹配少于四个字母的任何单词。

如果您的短语完全由少于四个字母的字词组成,例如key,则必须手动回退到未经索引的LIKE搜索。

您可以按lowering the ft_min_word_len setting更改此行为。您可能还想更改或禁用“停用词”列表(也没有编入索引),因为默认列表是残酷和奇怪的。