{
"query": {
"bool": {
"must": [
{
"range": {
"create_time": {
"from": "2020-01-01T16:00:00.000",
"to": "2020-01-02T15:59:59.999"
}
}
}
]
}
},
"size": 0,
"aggs": {
"productAgg": {
"terms": {
"field": "product_code.keyword",
"size": 2147483647
},
"aggs": {
"partnerAgg": {
"terms": {
"field": "partner_code.keyword",
"size": 2147483647
},
"aggs": {
"templateAgg": {
"cardinality": {
"field": "template_code.keyword"
}
}
}
},
"partnerAggSum": {
"sum_bucket": {
"buckets_path": "partnerAgg>templateAgg.value"
}
}
}
},
"productAggSum": {
"sum_bucket": {
"buckets_path": "productAgg>partnerAggSum"
}
}
}
}
首先,计算按照template_code做去重,计算template_code的个数
然后,计算partner_code维度下有多少个template_code的sum之和
最后,计算product_code维度下的总共有多少个 :按照 product_code、partner_code、template_code三个维度一共有多少种情况