我有一个收集学生的文件,格式如下: -
{
_id:"53fe74a866455060e003c2db",
name:"sam",
subject:"maths",
marks:"77"
}
{
_id:"53fe79cbef038fee879263d2",
name:"ryan",
subject:"bio",
marks:"82"
}
{
_id:"53fe74a866456060e003c2de",
name:"tony",
subject:"maths",
marks:"86"
}
Run Code Online (Sandbox Code Playgroud)
我想得到所有学生的总分数= subject ="maths".所以我应该得到163总和.
db.students.aggregate([{ $match : { subject : "maths" } },
{ "$group" : { _id : "$subject", totalMarks : { $sum : "$marks" } } }])
Run Code Online (Sandbox Code Playgroud)
现在我应该得到以下结果 -
{"result":[{"_id":"53fe74a866455060e003c2db", "totalMarks":163}], "ok":1}
Run Code Online (Sandbox Code Playgroud)
但我得到 -
{"result":[{"_id":"53fe74a866455060e003c2db", "totalMarks":0}], "ok":1}
Run Code Online (Sandbox Code Playgroud)
有人能指出我在这里做错了什么吗?