0
バケット指定なしで集計することは可能ですか?ElasticSearch - バケッティングのない集計
たとえば、コレクション内のすべてのドキュメントの数値のSUMを取得したいとします。 SQLで
:SELECT SUM(FIELD), COUNT(*) FROM TABLE;
バケット指定なしで集計することは可能ですか?ElasticSearch - バケッティングのない集計
たとえば、コレクション内のすべてのドキュメントの数値のSUMを取得したいとします。 SQLで
:SELECT SUM(FIELD), COUNT(*) FROM TABLE;
はい、あなたは、単にこのようなトップレベルsum
aggregationを指定することができます。
{
"size": 0,
"aggs": {
"total": {
"sum": {
"field": "myField"
}
}
}
}
あなたはこの
{
...
"hits": {
"total": 48441987, <---- COUNT(*)
"max_score": 0,
"hits": []
},
"aggregations": {
"total": {
"value": 445420187457 <---- SUM(FIELD)
}
}
}
なぜdoesnの」のような答えを得るでしょうt 'sum'集約はバケットを返しますか?バケットで「和」を得るにはどうすればよいですか? – Jordi
バケツを頼んでいないのですか?合計集計はメトリック集計であり、数値のみを返します。あなたはどんなバケツをしたいですか? – Val
申し訳ありません私はよく答えました。私は別の質問をお願いします。私は[documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-pipeline-sum-bucket-aggregation.html)を見てきました。 'sum_bucket'を使うかもしれません。しかし、サブアグリゲーションの使用はどうですか? term(field) - > sum?だから私は新しい投稿でそれを求めるつもりです。 – Jordi