如何使用solrj获得facet.query结果?

时间:2011-04-26 12:04:15

标签: faceted-search facet solrj solr

我正在尝试使用solrj获取构面查询的结果,但似乎无论是否添加构面查询都无关紧要。无论如何,我得到了相同的文件清单。

因此,此查询返回相同的文档列表...

  query.setQuery(searchString);
  query.setFacet(true);
  query.addFacetField("CATNAME_STR");
  query.addFacetQuery("CATNAME_STR:" + facetName); 

...使用此查询

  query.setQuery(searchString);
  query.setFacet(true);
  query.addFacetField("CATNAME_STR");

唯一不同的是,我可以获得与response.getFacetQuery();

的构面查询匹配的文档数量

我期待它像

一样工作
http://localhost:8983/solr/select/?q=*%3A*&version=2.2&start=0&rows=10&indent=on&facet=on&facet.field=CATNAME_STR&fq=CATNAME_STR:Erasmus

有什么想法吗?

感谢。

顺便说一下,我使用的是Solr 3.1.0和solr-core-3.1.0

1 个答案:

答案 0 :(得分:5)

事实证明fq=CATNAME_STR:Erasmus并不代表query.addFacetQuery("CATNAME_STR:Erasmus"),而是query.addFilterQuery("CATNAME_STR:Erasmus")