嵌套SQL选择使用弹性搜索 [英] Nested SQL select using elasticsearch
本文介绍了嵌套SQL选择使用弹性搜索的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在弹性搜索中写这个:
How can I write this in elasticsearch:
SELECT avg(sum)
FROM (
SELECT sum(rev) as sum
FROM table
GROUP BY user_id
)
推荐答案
如果您使用的ES版本是2.x,请使用平均值聚合
If ES version you are using is 2.x use Avg Bucket Aggregation
{
"aggs": {
"group_by_user": {
"terms": {
"field": "userId"
},
"aggs": {
"rev_sum": {
"sum": {
"field": "rev"
}
}
}
},
"avg_monthly_sales": {
"avg_bucket": {
"buckets_path": "group_by_user>rev_sum"
}
}
}
}
希望它有帮助
这篇关于嵌套SQL选择使用弹性搜索的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文