gpt4 book ai didi

elasticsearch - Elasticsearch 使用范围聚合,基于术语聚合结果

转载 作者:行者123 更新时间:2023-12-03 02:35:20 25 4
gpt4 key购买 nike

我的SQL格式问题很简单,但我可以将其转换为 flex 聚合格式

假设我想要 Elasticsearch 中引爆查询的结果

SELECT Foo.Type,COUNT(*) FROM Foo GROUP BY Foo.Type HAVING SUM(Foo.Price) > 20 AND SUM(Foo.Price) < 25

flex 中是否存在任何聚合组合,这些组合会响应这些查询?

重要的是要提到第一组(Foo.Type)的结果大于最大 flex 聚集大小(10000)

我的数据是:

证件类型价格

1蓝色10

2蓝色10

3蓝色5

4红15

我的结果应该是这样的:

蓝色3

如果有人可以帮助我,我将不胜感激。
谢谢

最佳答案

你可以像下面这样

{
"aggs": {
"byType": {
"terms": {
"field": "type"
},
"aggs": {
"price_sum": {
"sum": {
"field": "price"
}
},
"price_bucket_filter": {
"bucket_selector": {
"buckets_path": {
"totalPrice": "price_sum"
},
"script": "params.totalPrice > 20 && params.totalPrice< 25"
}
}
}
}
}
}

关于elasticsearch - Elasticsearch 使用范围聚合,基于术语聚合结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59007700/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com