2017-03-08 10 views
2

都市と日付の2つのフィールドのフィルタを適用してピボットデータを作成する必要があります。 都市や日付範囲でデータをフィルタリングできますが、統計情報フィールドにはフィルタが適用されません。 以下は、私が使用しているSolrクエリです:SOLRの統計フィールドに日付範囲を適用できません

select? & fq = {!tag = f1}都市:(%221000%20OAKS%22)&ファセット= true & facet.query = true & facet.query = {!tag = queryOne} datadate:[2015-01-01%20TO %202015-12-31] & facet.query = {!tag = queryTwo} datadate:[2014-01-01%20TO%202014-12-31] & stats = true & stats.field = {!tag = a1% 20%= 100%20stats = a1}市&ファックス:0%= 20%= 100%20stats = a1} & stats.field = {!tag = a2%20sum = true%20key = spend1} & facet.pivot = {!query = queryOne%20key = facet.pivot = {!クエリ= queryTwo%20stats = A2%20key = C2}都市&ファセット= &インデントに= &重量= JSON &行= 0 & Q = オン:

実際の結果:あなたが見ることができるように enter image description here

、合計は関係なく、私はqueryone & querytwoタグに与えるmはdatadate何のと同じ(すなわち2348)のまま。 datadateフィルタが統計フィールドに影響を与えていないようです。 誰かが私にはこれでかなり新しいので、ここで起こっていることを説明してもらえますか? ありがとうございます。

+0

あなたはどのSolrのバージョンを使用していますか? –

+0

Solr-6.1.0の使用 –

答えて

0

問題は、StatsComponent & FacetComponentが互いに完全に統合されていないことです。次のSolr Jiraは、ユースケース:SOLR-6348で構成されています。

しかし、JSON Facet API経由で使用する場合の回避策があります。ここではあなたの特定のユースケースを解決ファセットパラメータは次のとおりです。

{ 
    "date_range": { 
    "type": "range", 
    "field": "datadate_dt", 
    "start": "2014-01-01T00:00:00Z", 
    "end": "2016-01-01T00:00:00Z", 
    "gap": "%2B1YEAR", 
    "facet": { 
     "cities_and_spends": { 
     "type": "terms", 
     "field": "city_s", 
     "facet": {"sum_of_spend": "sum(spend_d)"} 
     }, 
     "cities_and_charges": { 
     "type": "terms", 
     "field": "city_s", 
     "facet": {"sum_of_spend": "sum(charge_d)"} 
     } 
    } 
    } 
} 

したがって、全体的なGETリクエストは次のようになります。

.../select?indent=on&q=*:*&fq=city:(%221000%20OAKS%22)&rows=0&wt=json&json.facet={%20%22date_range%22:%20{%20%22type%22:%20%22range%22,%20%22field%22:%20%22datadate_dt%22,%20%22start%22:%20%222014-01-01T00:00:00Z%22,%20%22end%22:%20%222016-01-01T00:00:00Z%22,%20%22gap%22:%20%22%2B1YEAR%22,%20%22facet%22:%20{%20%22cities_and_spends%22:%20{%20%22type%22:%20%22terms%22,%20%22field%22:%20%22city_s%22,%20%22facet%22:%20{%22sum_of_spend%22:%20%22sum(spend_d)%22}%20},%20%22cities_and_charges%22:%20{%20%22type%22:%20%22terms%22,%20%22field%22:%20%22city_s%22,%20%22facet%22:%20{%22sum_of_spend%22:%20%22sum(charge_d)%22}%20}%20}%20}%20}