cómo calcular solo la suma de dos jugadores. por ejemplo, tengo un esquema de jugador
y en mongoDB tengo 10 datos de jugadores pero quiero calcular la suma de los datos de dos jugadores como este => player1(win=1)+player2(win=1) = total_win = 2
const player_Schema = new mongoose.Schema({ joining_date:{ type:String, required:true }, name:{ type:String, required:true }, tip:{ type:Number, required:true }, win:{ type:Number, required:true }, balance:{ type:Number, required:true }, tournament_id:{ type: mongoose.Schema.Types.ObjectId, ref:"tournament_datas" } })utilizo la agregación con el grupo, pero como resultado obtuve la suma de los diez jugadores (ganador)
código de trabajo
const total_tip = db.aggregate([ // {$limit:2}, {$match:{ _id:tournamentId} }, {$group : { _id:null, total_tip:{$sum:"$tip"}, total_win:{$sum:"$win"} }} ], (err,data) => { if(err) throw err; console.log("total_tip ==>",data); }) Obtuve la suma ganadora de dos jugadores usando el límite, pero no es bueno.
lo que necesito cuando
a) while creating the players and tournaments , calculate the totals(totalWin,totalTip) from players by aggregation.<br> eg: player1,tournament1,tip=25,win=75 player2,tounament1,tip=10,win=40 Then the tournament 1 will have totalTip:25+10=35 and totalWin:75+40=115 eg: player1,tournament2,tip=20,win=100 player3,tournament2,tip=30,win=70 Then the tournament 2 will have totalTip:20+30=50 and totalWin:100+70=170 and so on for the tournament and players