正常来说,如果没有一个文档匹配的话,使用 date_histogram 会返回一个空数组。
使用 extended_bounds 标识强制返回这个范围内的数值。
尤其是在统计一段时间内的趋势的时候,这个字段大概率会被用到。
如果只需要这个区间内的数据,还需要在这之前对这个时间字段进行过滤。
GET /form_order/_search
{
"size" : 0,
"aggs": {
"sales": {
"date_histogram": {
"field": "sold",
"interval": "month",
"format": "yyyy-MM-dd",
"min_doc_count" : 0,
"extended_bounds" : {
"min" : "2030-01-01",
"max" : "2030-02-01"
}
}
}
}
}