0
私はSQLバックグラウンドを持ち、mongodbのデータを集約する構文を理解していますが、MongoDBの複数のキー集約の出力を「平坦化」するのに問題があります。例えば、標準の構文は以下の通りです:mongodb複数のキー集約
db.transactions.aggregate(
[
{ $group: { _id: {"category":"$category","postdate":"$postdate"} , "total": { $sum: "$total" } } }
]
);
しかし、これは次の形式でデータを返します。
[{"_id":{"category":"Fees","postdate":"2013-01-04T05:00:00.000Z"},"total":24},
{"_id":{"category":"Fees","postdate":"2012-12-20T05:00:00.000Z"},"total":-0.02}]
私は何をしたいことは私は次のような形式のデータであります
オプション1:依然として二つ以上の列にグループ化
[{"_id":"Auto","postdate":"2013-01-04T05:00:00.000Z","total":24},
{"_id":"Fees","postdate":"2012-12-20T05:00:00.000Z","total":-0.02}]
オプション2:
["category":"Auto","postdate":"2013-01-04T05:00:00.000Z","total":24},
{"category":"Fees","postdate":"2012-12-20T05:00:00.000Z","total":-0.02}]
mongodbでこれを行うにはどうすればよいですか?
オプション1つの最初の行は、 '手数料' でなければなりません。それはタイプミスですか? – Veeram
2番目の数字は実際には「自動」にする必要はありません。それを変更しました。ありがとう。 –
私はそれを理解していません。カテゴリだけが変わると思っていますか?サンプル文書を含めることはできますか?カテゴリ別にグループ化し、集計に投稿日を続けます。カテゴリ別にグループ化するには、さらにグループステージが必要です。 – Veeram