Aggregate Date Range filtered values in elastic search Aggregate Date Range filtered values in elastic search elasticsearch elasticsearch

Aggregate Date Range filtered values in elastic search


It is the other way around dates_between is a nested aggregation of group_by_device_id

"aggs": {    "group_by_device_id": {        "terms": {            "field": "device_id"        },        "aggs": {            "dates_between": {                "filter": {                    "range": {                        "added": {                            "gte": "2014-07-01 00:00:00",                            "lte": "2014-08-01 00:00:00"                        }                    }                }            }        }    }}

You could also move the filter into the the query:

{    "query": {        "filtered": {            "query": {                "match_all": {}            },            "filter": {                "range": {                    "added": {                        "gte": "2014-07-01 00:00:00",                        "lte": "2014-08-01 00:00:00"                    }                }            }        }    },    "aggs": {        "group_by_device_id": {            "terms": {                "field": "device_id"            }        }    }}