zoukankan      html  css  js  c++  java
  • 39.date hitogram基础知识

    主要知识点:

    • date hitogram之统计每月电视销量

       

    上一节讲到histogram,他是以数值进行分组。本节讲到以日期进行bucket分组操作,也就是说把连续的日期变成离散的日期区间,然后进行聚合分析操作。date histogram,按照我们指定的某个date类型的日期field,以及日期interval,按照一定的日期间隔,去划分bucket

       

    语法:

    GET /tvs/sales/_search

    {

    "size" : 0,

    "aggs": {

    "sales": {

    "date_histogram": {

    "field": "sold_date",

    "interval": "month",

    "format": "yyyy-MM-dd",

    "min_doc_count" : 1,

    "extended_bounds" : {

    "min" : "2016-01-01",

    "max" : "2017-12-31"

    }

    }

    }

    }

    }

       

    min_doc_count0。表赤即使某个日期interval2017-01-01~2017-01-31中,一条数据都没有,那么这个区间也是要返回的,不然默认是会过滤掉这个区间的。如果设为1.也就是说这个区间至少要有一条数据才返回。

    extended_boundsminmax:划分bucket的时候,会限定在这个起始日期,和截止日期内,不在这个区间内的日期会被自动过滤掉,不作为结果返回,也不会进行分组。

       

    执行结果如下(部分):

    "aggregations": {

    "group_by_sold_date": {

    "buckets": [

    {

    "key_as_string": "2016-01-01",

    "key": 1451606400000,

    "doc_count": 0

    },

    {

    "key_as_string": "2016-05-01",

    "key": 1462060800000,

    "doc_count": 1

    },

  • 相关阅读:
    delphi操作xml学习笔记 之一 入门必读
    Delphi中实现ListView滚动条的换肤方案
    关于CreateParams的参数
    Delphi中编写OwnerDraw方式按钮的方法以及注意点
    ClientDataSet使用心得和技巧
    ADO多线程
    SQL的单个表的大小限制最大可以是多大?
    TClientDataSet使用要点
    鼠标拖动窗体
    Delphi托盘类 收集
  • 原文地址:https://www.cnblogs.com/liuqianli/p/8535819.html
Copyright © 2011-2022 走看看