我正在尝试按特定顺序查询TermA和TermB
TermA << TermB
或句子
TermA SENTENCE TermB
但只有在他们之间不发生特定词语时才想要它们
TermA -(NOT1 | NOT2 | NOT3) << TermB
但是我收到错误“NOT不能用作操作数之前”
基本上试图找到
TermA (-A | -B | -C) TermB
在句子内或给定的邻近地区,例如
(TermA (-A | -B | -C) TermB)~10
或
TermA SENTENCE (-A | -B | -C) SENTENCE TermB
但我使用的任何组合都失败了。警告我刚刚开始使用Sphinx
答案 0 :(得分:0)
最近的可能是
(TermA -(NOT1 | NOT2 | NOT3)) << TermB
我认为应该运行。
但可能排除一些比赛。例如,如果文档simpley包含NOT1 任何地方,则文档不匹配。
我建议使用负断言运算符,但没有任何结果 http://sphinxsearch.com/bugs/view.php?id=1259
还从该错误报告中链接,是sphinx论坛上的原始帖子 http://sphinxsearch.com/forum/view.html?id=9869 ...我确实讨论了我为这个例子找到的解决方法。我认为同样的技巧可能对你有用,需要更多思考......