日期直方图中返回错误格式化的`key_as_string`

时间:2016-01-28 22:53:42

标签: elasticsearch

如果我没有使用key_as_string

"format": "YYYY-MM-DD"就可以了:

{
    "aggs" : {
        "Filed" : {
            "date_histogram" : {
                "field" : "filing_date",
                "interval" : "day"
            }
        }
    }
}

返回

  ...
  {
    "key_as_string" : "2015-12-30T00:00:00.000Z",
    "key" : 1451433600000,
    "doc_count" : 12
  }, {
    "key_as_string" : "2015-12-31T00:00:00.000Z",
    "key" : 1451520000000,
    "doc_count" : 2
  }, {
    "key_as_string" : "2016-01-01T00:00:00.000Z",
    "key" : 1451606400000,
    "doc_count" : 2
  }, ...

然而,在我申请格式后,它返回

  ...
  {
    "key_as_string" : "2015-12-364",
    "key" : 1451433600000,
    "doc_count" : 12
  }, {
    "key_as_string" : "2015-12-365",
    "key" : 1451520000000,
    "doc_count" : 2
  }, {
    "key_as_string" : "2016-01-01",
    "key" : 1451606400000,
    "doc_count" : 2
  }, ...

这显然是错误的。 这是一个错误还是我错过了什么?

1 个答案:

答案 0 :(得分:0)

我认为这只是错误的日期格式,所以你错误地得到了一年中的3位数日。假设您正在寻找基本的四位数年份,一年中的两位数月份和一个月中的两位数,请将格式字符串更改为:

"format": "yyyy-MM-dd"

注意小写的。