2017-02-10 14 views

答えて

0

、あなたは降順でdatetimeフィールド(フィールドインデックス時間情報を格納)に基づいて結果をソートし、検索クエリにsizeオプションを使用して結果の数を制限し、結果としてあなたの上にaggsを実行することができます。

elasticsearchバージョン< 2.0を使用している場合、フィールドになることができます。それ以降のバージョンのelasticsearchでは、マッピングにdatetimeフィールドを明示的に追加し、インデックス作成時にその値を設定する必要があります。要するに、最後のN個の結果が最初のN個の結果となり、結果に対して集約を実行するように検索クエリを変更します。

{ 
    "query": { 
    "match_all": {} 
    }, 
    "size": N, 
    "sort": [ 
    { 
     "dateTimeFieldName(May be _timestamp)": { 
     "order": "desc" 
     } 
    } 
    ], 
    'aggs': { 
    <your aggregation query> 
    } 
} 
+0

残念ながら、私たちはこの方法を試みましたが、機能しません。サイズは結果のヒットリターンに影響を与えましたが、集計結果への影響はありませんでした。 – 3white

関連する問題