【问题标题】:Why does full text searching for string 'FDR' yields no results in MySQL?为什么全文搜索字符串“FDR”在 MySQL 中没有结果?
【发布时间】:2010-10-08 05:08:17
【问题描述】:

我正在尝试基于全文搜索来搜索用户。

SELECT * FROM users WHERE MATCH (name) AGAINST ('FDR' IN BOOLEAN MODE);

但是查询没有产生任何结果。我可以用其他字符串替换搜索值并产生结果。

我什至尝试使用空停用词列表但没有成功。问题似乎与这个特定的字符串有关。

【问题讨论】:

  • 您认为应该匹配的名称列中的字符串是什么?

标签: mysql search full-text-search


【解决方案1】:

来自dev.mysql.com/doc/refman/5.1/en/fulltext-fine-tuning.html

默认最小值为四 人物;默认最大值是 版本依赖。如果你改变 无论是价值,你必须重建你的 FULLTEXT 索引。

最小和最大长度 要索引的单词由 ft_min_word_len 和 ft_max_word_len 系统变量。

另见Server System Variables

【讨论】:

  • 我使用 ft_min_word_len = 4 构建了我的索引,随后将其降低到 3。但是,我确实意识到需要重建 FULLTEXT 索引。有没有办法在不丢弃和重建它们的情况下重建它们?
  • "在这种情况下要重建索引,做一个QUICK修复操作就足够了:"mysql> REPAIR TABLE tbl_name QUICK;" - dev.mysql.com/doc/refman/5.1/en/fulltext-fine-tuning.html
【解决方案2】:

如果this article 仍然有效,那是因为 MySQL 全文索引不会索引

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-10
    • 1970-01-01
    相关资源
    最近更新 更多