(5)Date Histogram Aggregation
时间直方图聚合,专门对时间类型的字段做直方图聚合。这种需求是比较常用见得的,我们在统计时,通常就会按照固定的时间断(1个月或1年等)来做统计。下面统计学校中同一年出生的学生数。
curl -XPOST "192.168.1.101:9200/student/student/_search?search_type=count" -d ' { "aggs": { "data_histogram_birthday": { "date_histogram": { "field": "birthday", "interval": "year", // 按年统计 "format": "yyyy" // 返回结果的key的格式 } } } } '
返回结果如下,可以看到由于上面的”format”: “yyyy”,所以返回的key_as_string只返回年的信息。
{
"buckets": [ { "key_as_string": "1985", "key": 473385600000, "doc_count": 1 }, { "key_as_string": "1986", "key": 504921600000, "doc_count": 1 }, { "key_as_string": "1987", "key": 536457600000, "doc_count": 1 }, { "key_as_string": "1989", "key": 599616000000, "doc_count": 1 }, { "key_as_string": "1990", "key": 631152000000, "doc_count": 1 }, { "key_as_string": "1991", "key": 662688000000, "doc_count": 1 }, { "key_as_string": "1992", "key": 694224000000, "doc_count": 1 }, { "key_as_string": "1994", "key": 757382400000, "doc_count": 1 } ] }