我使用来自 Elasticsearch 的date_histogram聚合,间隔为2d,我也有一个过滤器一个月。例如。从 2019 年 11 月 1 日至 2019 年 11 月 31 日。
我有这样的映射:
PUT test_index/test/_mapping
{
"properties": {
"date": {
"type": "date",
"format": "yyyy-MM-dd"
}
}
}
然后我插入这样的数据:
POST test_index/test
{
"date": "2019-11-01",
"content": "hello world!"
}
POST test_index/test
{
"date": "2019-11-02",
"content": "hello world!"
}
POST test_index/test
{
"date": "2019-11-03",
"content": "hello world!"
}
以下是我的查询:
GET test_index/test/_search
{
"query": {
"match_all": {}
},
"size": 0,
"aggs": {
"histogram": {
"filter": {
"range": {
"date": {
"gte": "2019-11-01",
"lte": "2019-11-30"
}
}
},
"aggs": {
"my_histogram": {
"date_histogram": {
"field": "date",
"interval": "2d"
}
}
}
}
}
}
我得到这个结果:
{
...
"aggregations" : {
"histogram" : {
"meta" : { },
"doc_count" : 3,
"my_histogram" : {
"buckets" : [
{
"key_as_string" : "2019-10-31",
"key" : 1572480000000,
"doc_count" : 1
},
{
"key_as_string" : "2019-11-02",
"key" : 1572652800000,
"doc_count" : 2
}
]
}
}
}
}
我得到第一个带有密钥2019-10-31的存储桶。
我想从2019-11-01开始得到结果。
请大家帮帮我好吗?
我正在使用 Elasticsearch 6.6.1。