Sphinx 查询奇怪的结果

Sphinx query strange result

我对 sphinx 结果有一些问题。

搜索普通词时没有问题。但是如果输入"gghghghgh"这样的废话,搜索结果就不会是空的。事实上,没有包含此类查询的文本元素。

我不明白为什么会这样。谢谢!

查询:

mysql> select id from newsCache where match('ghghgh'); show meta;
+--------+
| id     |
+--------+
| 133576 |
|  82617 |
|  43613 |
|  38385 |
|  37042 |
|  55744 |
|  42380 |
|  44921 |
|  52825 |
|  54994 |
|  85116 |
| 132790 |
| 143505 |
|  86185 |
|  38634 |
|  40388 |
|  49325 |
|  49751 |
|  58548 |
|  80700 |
+--------+
20 rows in set (0.01 sec)

+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| total         | 348   |
| total_found   | 348   |
| time          | 0.009 |
| keyword[0]    | g200  |
| docs[0]       | 355   |
| hits[0]       | 433   |
+---------------+-------+
6 rows in set (0.01 sec)

在我的配置中我发现了这样的参数:

morphology     = stem_enru, soundex, metaphone

我做什么:

  1. 删除了 soundex morf 引擎
  2. Searchd --stop - 停止搜索服务
  3. 删除索引文件(同时删除binlog!)
  4. 重新索引我的 RT 索引
  5. 重新开始搜索

之后就没有出现"ghghghg0"=>"g200"这样奇怪的结果了。一切正常。

特别感谢@barryhunter 在 sphinx 论坛上对解决方案的解释。

希望对您有所帮助。