使用SolrJ构造包含AND和OR的复杂SolrQuery对象

时间:2014-04-24 16:38:29

标签: solr lucene solrj

如何使用SolrJ构建包含ANDs / OR的复杂SolrQuery对象?

示例:

SolrQuery ss = new SolrQuery().setQuery("(a:1 AND (b:2 OR -c:3))");

这当然会起作用,但我想要递归地构建查询而不是一个长查询字符串。这就是我的尝试:

    SolrQuery sq0 = new SolrQuery().setParam("a", "1");
    SolrQuery sq1 = new SolrQuery().setParam("b", "2").setParam("-c", "3");
    SolrQuery sq = new SolrQuery();
    sq.add(sq0);
    sq.add(sq1);

这不起作用,因为sq相当于a=1&b=2&-c=3,这不是我想要的。

这里是在SolrNet上下文中询问的very similar question。我也想知道SolrJ是否也有类似的东西。

0 个答案:

没有答案