1.es版本5.6.9
2.问题描述:
按照comid和datatype两个字段进行聚合,但es是通过子嵌套的方式来实现的。先按照comid聚合,再按照datatype聚合,这都没有问题,但是我的问题是,我想在comid聚合的那一层有个max aggs, 在datatype聚合那一层有个min aggs, 语句如下:
不知道ES支不支持这种模式,还是我写法有问题,请指教。
2.问题描述:
按照comid和datatype两个字段进行聚合,但es是通过子嵌套的方式来实现的。先按照comid聚合,再按照datatype聚合,这都没有问题,但是我的问题是,我想在comid聚合的那一层有个max aggs, 在datatype聚合那一层有个min aggs, 语句如下:
{
"size": 0,
"aggs": {
"comid": {
"terms": {
"field": "comid.keyword",
"size": 10,
"order": {
"min_group": "asc"
}
},
"aggs": {
"min_group": {
"min": {
"field": "group"
}
},
"aggs":{
"datatype":{
"terms": {
"field": "datatype.keyword",
"size": 10,
"order": {
"max_group": "desc"
}
},
"aggs": {
"max_group": {
"max": {
"field": "group"
}
}
}
}
}
}
}
}
}
运行会报Unknown BaseAggregationBuilder [datatype] 的错误。不知道ES支不支持这种模式,还是我写法有问题,请指教。
3 个回复
rochy - rochy_he
赞同来自:
你也可以将业务简单描述一下,看你的叙述并不清楚你的真正目的。
elasticStack - 90后it大数据男
赞同来自:
这种写法报错
elasticStack - 90后it大数据男
赞同来自: