2

也许已经为时已晚,但我正在努力解决Solr 的 Facet Ranges问题。我可以通过 Solrj 执行查询,但我不明白如何通过 Solrj 检索结果。QueryResponse对象没有给我范围的 getter 方法,是吗?

例如,生成的 XML 如下所示:

<lst name="facet_counts">
<lst name="facet_queries"/>
<lst name="facet_fields"/>
<lst name="facet_dates"/>
<lst name="facet_ranges">
<lst name="my_field">
<lst name="counts">
<int name="2010-06-01T00:00:00Z">0</int>
<int name="2010-06-02T00:00:00Z">0</int>
<int name="2010-06-03T00:00:00Z">0</int>
...

我想获得计数数据。

4

2 回答 2

3

有关如何检索 facetQuery 结果的示例,请参阅SolrExampleTests.java第 150 行中的 SolrJ 示例测试。

看起来getFacetQueries()QueryResponse 上也有返回Map<String,Integer>我猜想包含方面范围及其计数的 QueryResponse 。您可以在QueryResponse.getFacetQueries()中查看源代码

于 2011-09-16T01:23:26.017 回答
2

我认为 QueryResponse.getFacetRanges() 方法是您想要的,但我认为这仅在最新版本的 SolrJ 中可用;3.4.0 有,但一些早期版本没有。

于 2011-09-16T01:13:35.783 回答