有包含类别(编号)和片段(长)字段的文档。我需要某种聚合方法,按类别对这些文档进行分组并将其中的所有部分加起来
这里文档的外观如下:
{
"category":"1",
"piece":"10.000"
},
{
"category":"2",
"piece":"15.000"
} ,
{
"category":"2",
"piece":"10.000"
},
{
"category":"3",
"piece":"5.000"
}
...
查询结果必须如下:
{
"category":"1",
"total_amount":"10.000"
}
{
"category":"2",
"total_amount":"25.000"
}
{
"category":"3",
"total_amount":"5.000"
}
..
任何建议?
答案 0 :(得分:1)
您想对类别进行术语聚合,从上面的记录中我看到您将它们作为字符串发送,因此它们将是分类变量。然后,作为度量,传递总和。
它的外观如下:
"aggs" : {
"categories" : {
"terms" : {
"field" : "category"
},
"aggs" : {
"sum_category" : {
"sum": { "field": "piece" }
}
}
}
}