elasticsearch - 如何在 Elasticsearch 中按天聚合查询?

标签 elasticsearch lucene

我需要一个查询来返回去年的数据,按天分组。到目前为止,我已经编写了一个返回全年数据的查询(我希望它是正确的),但我不知道如何按天对数据进行分组。

"query" : {
            "range" : {
                    "timestamp" : {
                                 "gt" : "2017-01-01 00:00:00",
                                 "lt" : "2018-01-01 00:00:00"
                       }
               }
        }

如有任何帮助,我们将不胜感激。

我正在使用 Elasticsearch 6.2.2。

最佳答案

可以查看date_histogram聚合

POST my_index/my_type/_search
{
  "size": 0, 
  "aggs": {
    "bucketName": {
      "date_histogram": {
        "field": "timestamp",
        "interval": "day",
        "min_doc_count": 1,
        "format": "yyyy-MM-dd",
        "order": {"_key": "desc"}
      }
    }
  }
}

它会返回这样的东西

{
  "took": 23,
  "timed_out": false,
  "_shards": {
    "total": 6,
    "successful": 6,
    "failed": 0
  },
  "hits": {
    "total": 112233,
    "max_score": 0,
    "hits": []
  },
  "aggregations": {
    "bucketName": {
      "buckets": [
        {
          "key_as_string": "2018-03-07",
          "key": 1520380800000,
          "doc_count": 1
        },
        {
          "key_as_string": "2018-03-06",
          "key": 1520294400000,
          "doc_count": 93
        },
        {
          "key_as_string": "2018-03-05",
          "key": 1520208000000,
          "doc_count": 99
        },
        {
          "key_as_string": "2018-03-04",
          "key": 1520121600000,
          "doc_count": 33
        },
        {
          "key_as_string": "2018-03-03",
          "key": 1520035200000,
          "doc_count": 29
        }
      ]
    }
  }
}

关于elasticsearch - 如何在 Elasticsearch 中按天聚合查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49155098/

相关文章:

elasticsearch - 在弹性索引名称中添加日期的原因和后果

elasticsearch - 多语言Elasticsearch索引

elasticsearch - 搜索时显示的数据错误

java - Spring Data Neo4j - 参数类型不匹配

lucene - 如何检查 Lucene IndexWriter 实例是否有效/打开?

java - 如何读取lucene 5.5.5索引?

postgresql - 将表从 postgres 数据库同步/导入到 elasticsearch 的正确方法是什么?

amazon-web-services - 在 Amazon ElasticBeanstalk 中使用 docker 或自定义 AMI

solr - 在 Solr 中,为什么对索引和查询使用不同的分析器?

search - 如何在Compas Search框架中访问子对象属性?