1.基础
{
“size” : 0,
“aggs” : {
“cate_agg” : {
“terms” : {
“field” : “cate_id”
}
}
}
}
2.聚合求平均
{
“size” : 0,
“aggs”: {
“cate_agg”: {
“terms”: {
“field”: “cate_id”
},
“aggs”: {
“cate_avg_price”: {
“avg”: {
“field”: “price”
}
}
}
}
}
}
3.更深维度的聚合
{
“size”: 0,
“aggs”: {
“group_by_cate_id”: {
“terms”: {
“field”: “cate_id”
},
“aggs”: {
“cate_avg_price”: {
“avg”: {
“field”: “price”
}
},
“group_by_brand_id”: {
“terms”: {
“field”: “brand_id”
},
“aggs”: {
“brand_avg_price”: {
“avg”: {
“field”: “price”
}
}
}
}
}
}
}
}
4.求最大最小总和
{
“size” : 0,
“aggs”: {
“colors”: {
“terms”: {
“field”: “cate_id”
},
“aggs”: {
“avg_price”: { “avg”: { “field”: “price” } },
“min_price” : { “min”: { “field”: “price”} },
“max_price” : { “max”: { “field”: “price”} },
“sum_price” : { “sum”: { “field”: “price” } }
}
}
}
}
5.histogram分组聚合
{
“size” : 0,
“aggs”:{
“price”:{
“histogram”:{
“field”: “price”,
“interval”: 2000
},
“aggs”:{
“revenue”: {
“sum”: {
“field” : “price”
}
}
}
}
}
}
6.基于时间来聚合 date histogram
{
“size” : 0,
“aggs”: {
“sales”: {
“date_histogram”: {
“field”: “create_time”,
“calendar_interval”: “month”,
“format”: “yyyy-MM-dd”,
“min_doc_count” : 0,
“extended_bounds” : {
“min” : “2019-01-01”,
“max” : “2019-06-30”
}
}
}
}
}
7基于时间下钻分析
下钻分析之统计每季度每个品牌的总量
{
“size”: 0,
“aggs”: {
“group_by_create_time”: {
“date_histogram”: {
“field”: “create_time”,
“calendar_interval”: “quarter”,
“format”: “yyyy-MM-dd”,
“min_doc_count”: 0,
“extended_bounds”: {
“min”: “2019-01-01”,
“max”: “2019-12-31”
}
},
“aggs”: {
“group_by_brand”: {
“terms”: {
“field”: “brand_id”
},
“aggs”: {
“sum_price”: {
“sum”: {
“field”: “price”
}
}
}
},
“total_sum_price”: {
“sum”: {
“field”: “price”
}
}
}
}
}
}
9.每个品牌的销售额排序
{
“size”: 0,
“aggs”: {
“group_by_brand”: {
“terms”: {
“field”: “brand_id”,
“order”: {
“avg_sale”: “asc”
}
},
“aggs”: {
“avg_sale”: {
“avg”: {
“field”: “sale”
}
}
}
}
}
}
每个分类下每个品牌 平均价格排序
{
“size”: 0,
“aggs”: {
“group_by_cate”: {
“terms”: {
“field”: “cate_id”
},
“aggs”: {
“group_by_brand”: {
“terms”: {
“field”: “brand_id”,
“order”: {
“avg_price”: “desc”
}
},
“aggs”: {
“avg_price”: {
“avg”: {
“field”: “price”
}
}
}
}
}
}
}
}
