diff --git a/readme.md b/readme.md index 7f3fdcf..c5222c4 100644 --- a/readme.md +++ b/readme.md @@ -34,6 +34,10 @@ Update card Price {$set:{'serra_updated':ISODate("2021-11-02T09:28:56.504Z")}, $push: {"serra_prices": { date: ISODate("2021-11-02T09:28:56.504Z"), value: 0.1 }}}); +Set value + + db.cards.aggregate([{ $group: { _id: { set: "$set" }, value: { $sum: { $multiply: ["$prices.eur", "$serra_count"] } }, count: { $sum: 1 } } }]) + # MongoDB Operations diff --git a/src/serra/root.go b/src/serra/root.go index 7723027..c8edbac 100644 --- a/src/serra/root.go +++ b/src/serra/root.go @@ -75,15 +75,13 @@ func Sets() { groupStage := bson.D{ {"$group", bson.D{ {"_id", "$setname"}, - {"sum", bson.D{ - {"$sum", "$prices.eur"}, - }}, + {"value", bson.D{{"$sum", bson.D{{"$multiply", bson.A{"$prices.eur", "$serra_count"}}}}}}, }}, } sets, _ := coll.storage_aggregate(groupStage) for _, set := range sets { - fmt.Printf("* %s (%.2f Eur)\n", set["_id"], set["sum"]) + fmt.Printf("* %s (%.2f Eur)\n", set["_id"], set["value"]) } storage_disconnect(client)