2017-03-06 13 views
3

私はElasticSearchを初めて利用しています。私は現在、弾性検索の並べ替えと範囲の機能に取り組んでいます。私の要件は、高さに基づいて、そして高さの範囲が150mmと180mmの間であるべきマッチング(会計部門に属する)従業員をソートすることです。 は、ここに私のクエリです:弾性検索マージソートと範囲関数

{ 


"query": { "match": {"department" : "accounts"} }, 
    "sort" : { 
    "height" : { 
     "range" : { 
     "gte": "150", 
     "lte": "180" 
     } 
    } 
    } 
}' 

しかし、ここで私はSearchPhaseExecutionExceptionを取得しています。 助けてください!次のように

答えて

2

あなたはフィルター機能を使用することができます。

{ 
"sort":{"height": "asc"}, 
    "query": { 
    "filtered": { 
     "query": { "match": {"department" : "accounts"} }, 
     "filter": { 
     "range": { 
      "height": { 
      "gte": 150, 
      "lte": 180 
      } 
     } 
     } 
    } 
    } 
}' 
+1

これはme.Thanks KayVのために働いていました – kartik