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 があるようです。ソースはQueryResponse.getFacetQueries()Map<String,Integer>で確認できます

于 2011-09-16T01:23:26.017 に答える
2

QueryResponse.getFacetRanges() メソッドが必要だと思いますが、これは SolrJ のごく最近のバージョンでしか利用できないと思います。3.4.0 にはありますが、以前のバージョンにはありませんでした。

于 2011-09-16T01:13:35.783 に答える