gpt4 book ai didi

elasticsearch - 我如何知道两个不同的汇总是否汇总了同一份文档?

转载 作者:行者123 更新时间:2023-12-02 23:53:11 25 4
gpt4 key购买 nike

假设我有两个aggs:

   GET .../_search
{
"size": 0,
"aggs": {
"foo": {
"terms": {
"field": "foo"
}
},
"bar": {
"terms": {
"field": "bar"
}
}
}
}

返回以下内容:
   ...
"aggregations": {
"foo": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "Africa",
"doc_count": 23
}
]
},
"bar": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "Oil",
"doc_count": 23
}
]
}
}


我的问题是,我怎么知道“foo”和“bar” ags是否聚合了相同的23个文档?

我尝试在“foo”和“bar” ags上添加一个子agg,以求和一个任意数字字段,但这并不是万无一失的。

最佳答案

您可以添加子聚合来聚合文档的标识字段,可以使用术语或复合聚合来完成。使用术语时,需要提供尺寸。请参阅以下示例:

GET .../_search
{
"size": 0,
"aggs": {
"foo": {
"terms": {
"field": "foo"
},
"aggs" : {
"terms" : {
"field" : your_id_here
}
}
},
"bar": {
"terms": {
"field": "bar"
},
"aggs" : {
"terms" : {
"field" : your_id_here
}
}
}
}
}

然后,您将需要比较嵌套的聚合。

另一种方法是使用搜索查询仅过滤出所需的文档。

关于elasticsearch - 我如何知道两个不同的汇总是否汇总了同一份文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56144643/

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