我正在使用ElasticSearch并试图找到所有独特的作者。以及所有独特作者的总长度。
例如,
作者:" Williams" 长度:100
作者"克林特" 长度:200
作者"罗恩" 长度:100
作者:" Williams" 长度:200
我期待着独特的作者2,总长度为300.
我尝试过以下代码;
"size": 0,
"aggs": {
"red_products": {
"cardinality": {
"field": "author"
},
"aggs": {
"total": {
"sum": {
"field": "length"
}
}
}
}
}
}
但是我收到一条错误消息,指出[cardinality]类型的Aggregator [red_products]无法接受子聚合。
我首先尝试总长度,然后是独特的作者,它给了我正确的独特作者,但给我每本书的总长度。
有什么想法吗?
答案 0 :(得分:0)
我想你可以试试这个:
"aggs": {
"2": {
"terms": {
"field": "author",
"size": 5,
"order": {
"1": "desc"
}
},
"aggs": {
"1": {
"sum": {
"field": "length"
}
}
}
}
}