2017-12-19 10 views
0

私は弾性検索アグリゲータクエリを使用して、価格帯に基づいて利用可能な製品のリストを取得しています。弾性検索アグリゲータ価格帯0から0

'aggs': { 
      'prices': { 
       'range': { 
        'field': 'price', 
        'ranges': [ 
         {'from': 0, 'to': 0}, 
         {'to': 4.99}, 
         {'from': 5, 'to': 9.99}, 
         {'from': 10} 
        ] 
       } 
      } 
     } 

私は自由である製品の数を取得したいので、私は0から0までの範囲を持っているしかし、それは動作しませんでした:

これは私のアグリゲータクエリがどのように見えるかです。残りの範囲は正常に動作しています。どのように私は価格0のためのaggを得ることができますか?

+0

私の回答はあなたを助けませんでしたか? – sunkuet02

+0

はい、ありがとうございます – max

答えて

3

Range Aggregations

注から引用この凝集includesfrom値と各範囲についてexcludesto 値こと。

したがって、範囲集計excludestoの値を入力してください。そのため、バケツ0-0のドキュメントを取得していません。

また、from: 0, to: 1を指定した場合、これはバケット0 ≤の値が<であることを意味します。また、from: 0, to: 0はバケット0 ≤の値が<であることを意味し、0は含まれません。

ソリューション

あなたはrange aggregation0値のバケツを取得したい場合、あなたは範囲from: 0, to: 0.000000001を設定することができ、けれども。ここでtoの値は0より大きい最小値です(アプリケーションで設定できます)。