gpt4 book ai didi

elasticsearch - 弹性 - 是否可以更改嵌套聚合的范围?

转载 作者:行者123 更新时间:2023-12-02 22:22:27 28 4
gpt4 key购买 nike

语境

弹性 6.0.0

我有以下结构:

{
"age": 24,
"blood": 450,
"iv": 700,
"job": "boss",
"damage": "cut,
"complications": {
"days": 4
},
"diagnostics": [
{"flavour": "lemon"}, {"flavour": "coco"}
]
}

我一直在尝试不同的聚合,总是在最后聚合平均字段,比如 this .

结果返回很好,实际上很棒。正如您在链接中看到的,最后的平均聚合是整个聚合中最关键的部分。方案。

到目前为止,我发现 他们必须是最后一步的过程。否则,我将无法获得所需数据聚合级别的正确平均值。

问题

我的问题出现在我必须添加嵌套聚合的地方,例如 here .

如果我在聚合方案的末尾添加嵌套聚合(诊断风格的分组),然后将平均值聚合添加为嵌套聚合上的另一个聚合,我得到的只是空值。
这是完全正确的!,鉴于此, blood , 也不是 iv字段是嵌套 diagnostics 的一部分 field 。

问题

is there a way to change the "scope" of the averages aggregation so that it can calculate the averages over the fields of the main object, and not the nested one, while I keep the nested aggregation in the scheme?



我已经搜索了文档,但似乎没有人明白我的问题,所以我认为我正在做的事情可能有问题。

最佳答案

正如有人已经说过的,您需要的是 reverse_nested聚合。根据documentation ,这正是子聚合中“改变范围”的事情。根据您的解释,我认为您需要将空对象提供给 reverse_nested聚合。

我希望这能让您走上解决问题的正确轨道。

关于elasticsearch - 弹性 - 是否可以更改嵌套聚合的范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49266038/

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