日期未按弹性搜索中的日期直方图排序

时间:2016-02-01 07:02:50

标签: elasticsearch

我正在触发一个查询,只有date_histogram聚合,如下所示

{
  "aggs": {
    "mentionsAnalytics": {
      "date_histogram": {
        "field": "created_at",
        "interval": "day"
      }
    }
  }

现在我得到的回复没有根据日期排序。以下是我的回复

"aggregations": {
"mentionsAnalytics": {
"buckets": [
{
"key_as_string": "2014-10-17T00:00:00.000Z",
"key": 1413504000000,
"doc_count": 2
}
,
{
"key_as_string": "2015-09-07T00:00:00.000Z",
"key": 1441584000000,
"doc_count": 2
}
,
{
"key_as_string": "2015-09-29T00:00:00.000Z",
"key": 1443484800000,
"doc_count": 2
}
,
{
"key_as_string": "2015-11-09T00:00:00.000Z",
"key": 1447027200000,
"doc_count": 4
}
]
}
}

如您所见,日期以随机顺序发生。我可以通过修改date_histogram聚合中的任何参数来对其进行排序。我不喜欢给出一个排序查询,作为一个单独的查询。这可能吗?

1 个答案:

答案 0 :(得分:6)

 {
  "aggs": {
    "mentionsAnalytics": {
      "date_histogram": {
        "field": "created_at",
        "interval": "day",
        "order": {
           "_key": "desc"
        }
      }
    }
  }

要从聚合响应中排序的字段应在内部顺序和排序类型

中给出