[英]How to aggregate on size of nested document in ElasticSearch?
嵌套字段名称是事务。
每个文件都有一个交易清单。
我希望汇总交易数量。 我寻求的信息是具有多于一笔交易的文件数量。
我尝试了以下方法:
"aggs": {
"tx_count": {
"terms": {
"script": {
"inline": "if(doc['transactions'].size>1){return 1;} else {return 0;}"
}
}
}
}
还尝试在嵌套聚合中使用此聚合。 有没有办法做到这一点? 我目前使用的是 ES 版本 5.6。
您可以使用params._source
来计算transactions
长度:
{
"size": 0,
"aggs": {
"tx_count": {
"terms": {
"script": {
"inline": "if (params._source['transactions'].size() > 1) { return 1; } else { return 0; }"
}
}
}
}
}
顺便说一句,它是.size()
,而不是.size
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.