我正在使用 BooleanQuery 来组合多个查询。我发现如果我向 BooleanQuery 添加 BooleanQuery,则不会返回任何结果。添加的 BooleanQuery 是一个 MUST_NOT 查询,例如 -city_id:100。
但正如lucene的规范所说,BooleanQuery可以嵌套,我认为这意味着添加这样的BooleanQuery是可以的。现在我必须从要添加的 BooleanQuery 中获取所有子句,然后将它们一一添加到容器 BooleanQuery 中。
我有点困惑。有人可以帮忙吗?非常感谢!
Lucene 不支持一元 NOT 运算符。但是您可以通过与它进行 AND 运算来获取此类查询的结果匹配所有文档查询 http://lucene.apache.org/java/3_0_1/api/all/org/apache/lucene/search/MatchAllDocsQuery.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)