2017-09-06 10 views
0

最後の1時間に発生したイベントの時間平均数を取得したいと思います。すべてのイベントは、フィールド "DayType"が "T1"で、フィールド "Town"が "NA"でなければなりません。Luceneクエリにフィルタを追加するには?

私の基本的な質問は次のとおりです。しかし、 "DayType"と "Town"フィールドでフィルタを追加する方法はわかりません。

POST /myindex/_search 
{ 
    "size": 0, 
    "aggs": { 
    "range": { 
     "date_range": { 
      "field": "Datetime", 
      "ranges": [ 
       { 
        "from": "now-1H/H", 
        "to": "now/H" 
       } 
      ] 
     } 
    } 
} 
} 

答えて

1

集計にのみ選択した文書に計算されますので、あなたのクエリでbool/filter制約を追加することができます

POST /myindex/_search 
{ 
    "size": 0, 
    "query": { 
    "bool": { 
     "filter": [ 
     {"term": {"DayType": "T1"}}, 
     {"term": {"Town": "NA"}} 
     ] 
    } 
    }, 
    "aggs": { 
    "range": { 
     "date_range": { 
      "field": "Datetime", 
      "ranges": [ 
       { 
        "from": "now-1H/H", 
        "to": "now/H" 
       } 
      ] 
     } 
    } 
} 
} 
関連する問題