更改Sphinx最大查询长度

时间:2012-09-05 15:44:01

标签: php sphinx

我正在使用带有PHP的Sphinx 2.0.4并启用了扩展匹配模式。当我尝试使用Sphinx查询语言时,如果我使用10个字或更少的话,我只能得到结果。例如,如果我搜索a | b之类的内容它会正常工作,但如果我搜索a | b | c | d | e | f | g | h | i | j | k它将始终返回无结果,即使有匹配项也是如此。有人知道增加此限制的设置吗?我在配置文件中搜索过,但我所做的更改似乎没有改变任何内容。

2 个答案:

答案 0 :(得分:1)

你确定这是问题吗?我使用的查询时间比这长得多(例如,有超过100个或者关键字),工作得很好。

事实上刚刚尝试过...

select * from sample8 where match('one | two | three | four | five | six | seven | eight | nine | ten | eleven | twelve');
<SNIP>
20 rows in set (0.28 sec)

select * from sample8 where match('a | b | c | d | e | f | g | h | i | j | k');
<SNIP>
20 rows in set (1.14 sec)

建议发布一个真实的REAL查询失败,而不是假的。

答案 1 :(得分:0)

如果您使用的不是SPH_MATCH_EXTENDED / SPH_MATCH_EXTENDED2匹配模式,则只使用10个来自查询的关键字。 Extended2是默认模式,支持查询语言,不仅仅是SPH_MATCH_BOOLEAN模式等布尔运算符。

Andrew Aksyonoff在这里说http://sphinxsearch.com/forum/view.html?id=1743关于限制。

有关匹配模式的详细信息,请参阅http://sphinxsearch.com/docs/current.html#matching-modes