1

Solr でどのようにファセット カウントでページネーションを行うことができますか?

4

2 に答える 2

2

ファセットの個別のカウントを取得するには、 SolrパッチSOLR-2242を適用する必要があります。
合計数は、ページ付けに役立ちます。

于 2012-05-26T09:36:26.003 に答える
0

Solr 5.3 以降では facet を使用してドキュメントの総数を取得します。

その単純な使用のために、

facet=on

例えば

http://<solr-url>/select?facet=on&indent=on&q=*:*&rows=0&wt=json

次に、応答で facets オブジェクトを取得します。次のようになります。

{
  "responseHeader":{
    "zkConnected":true,
    "status":0,
    "QTime":3,
    "params":{
      "q":"*:*",
      "indent":"on",
      "rows":"0",
      "facet":"on",
      "wt":"json"}},
  "response":{"numFound":8,"start":0,"maxScore":1.0,"docs":[]
  },
  "facet_counts":{
    "facet_queries":{},
    "facet_fields":{},
    "facet_ranges":{},
    "facet_intervals":{},
    "facet_heatmaps":{}}
}

から取得しますnumFoundresponseこれは、その solr コア内のレコードの総数です

別の方法

ファセット クエリがある場合は、

facet=on&json.facet={}

例えば

http://<solr-url>/select?facet=on&indent=on&json.facet={}&q=*:*&rows=0&wt=json

次に、応答で facets オブジェクトを取得します。次のようになります。

{
  "responseHeader":{
    "zkConnected":true,
    "status":0,
    "QTime":3,
    "params":{
      "json.facet":"{}",
      "q":"*:*",
      "indent":"on",
      "rows":"0",
      "facet":"on",
      "wt":"json"}},
  "response":{"numFound":80,"start":0,"maxScore":1.0,"docs":[]
  },
  "facet_counts":{
    "facet_queries":{},
    "facet_fields":{},
    "facet_ranges":{},
    "facet_intervals":{},
    "facet_heatmaps":{}},
  "facets":{
    "count":80}}

from facetsobject you get count、これはレコードの最大数です

于 2016-08-25T10:30:15.533 に答える