我有多行,我希望将这些数据作为联赛表返回并作为足球联赛表进行排序。
每个游戏的数据分为多行:
{
"_id" : ObjectId("55d0f8a6bd0782b480dc4941"),
"venue" : "h",
"game_id" : ObjectId("55d0f8a6bd0782b480dc48f9"),
"date" : ISODate("2015-04-25T14:00:00.000Z"),
"gd" : 0,
"ga" : 1,
"gf" : 1,
"points" : 1,
"team_id" : ObjectId("55d0f8a6bd0782b480dc48f1"),
"__v" : 0
}
我看不到在查询中做数学的方法,并返回给定team_id
的所有点的计算值。
Math
中的Mongoose
组中是否有mySQL
?
答案 0 :(得分:1)
是的,你可以使用http://mongoosejs.com/docs/api.html#aggregate_Aggregate-group和$ sum http://docs.mongodb.org/manual/reference/operator/aggregation/sum/来获得每个团队的积分总和
your-model-name.aggregate([
{
$group: {
_id: '$team_id',
total: {$sum: "$points"}
}
}
], function (err, result) {
if (err) {
// an error ....
} else {
// your result
}
});