gpt4 book ai didi

elasticsearch - 基于唯一键的术语汇总

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

我有一个充满文件的索引。他们每个人都有一个关键的“用户ID”,每个用户都有一个不同的值,但是每个用户可能有多个文档。每个用户都有其他属性(例如“颜色”,“动物”)。

我需要获取每个属性的汇总计数,具体如下:

aggs: {
colors: { terms: { field: color } },
animals: { terms: { field: animal } }
}

但是我需要每个唯一用户标识的这些计数,也许是:
aggs: {
group-by: { field: userid },
sub-aggs: {
colors: { terms: { field: color } },
animals: { terms: { field: animal } }
}
}

我查看了嵌套的聚合,但是如果有帮助的话,并没有理解。

这可能吗?

最佳答案

要嵌套这些术语(类似于SQL中的GROUP BY),只需创建更多的聚合级别即可。

目前尚不清楚您希望在最低级别获得什么总数,但是此查询将返回三个不同级别的文档计数:

curl -XGET 'http://localhost:9200/myindex/mypets/_search?pretty' -d '{
"query": {
"query_string": { "query":"some query", "fields": ["field1", "field2"]}
},
"aggs" : {
"userid_agg" : {
"terms": { "field" : "userid"},
"aggs" : {
"colors_agg" : {
"terms": { "field" : "color"},
"aggs" : {
"animals_agg" : {
"terms": { "field" : "animal"}
}
}
}
}
}
}
}'

关于elasticsearch - 基于唯一键的术语汇总,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27484789/

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