ES按时间聚合、嵌套聚合

// POST index name/document name/_search格式
POST xxx-*/doc/_search
{
"query": {
"bool": {
"must": [{
"range": {
// 指明需要聚合的时间范围,从1582537515000到1585043115000
"@timestamp": {
"gte": 1582537515000,
"lte": 1585043115000
}
}
}]
}
},
"aggs": {
"group_by_date": {
"date_histogram": {
// 分组关键字
"field": "@timestamp",
// 按天分组,还可以按年、月、日、时、分、秒分组
"interval": "day",
// 东八区
"time_zone":"+08:00",
// 时间的格式化
"format": "yyyy-MM-dd"
},
// 根据需要,做一个去重操作,也可以不做
"aggs": {
"agg_token": {
"cardinality": {
// 去重的关键字
"field": "token.keyword"
}
}
}
}
}
}
用到了ES的基本查询语法、聚合语法、嵌套聚合.

SELECT count() FROM idlph/face GROUP BY date_histogram(field='evt_dt','interval'='1d','alias'='wfsj', 'format'='yyyy-MM-dd', 'time_zone'='+08:00', 'min_doc_count'=1,order='desc')

posted @ 2020-04-28 14:47  乌卡拉卡  阅读(4767)  评论(0编辑  收藏  举报