如何在数据库中添加一个字段

我试图用相同的事件名称来分组所有的字段,并且总结这些字段的参与者。

{ "_id": { "$oid": "54b6ae8aec17b5e905a5813a" }, "person": { "name": "Something", "phone": "(011) 9468-1319", "email": "myemail@gmail.com", "obs": "" }, "event": { "full": "20/11/01 Classic", "date": "20/11/01", "name": "Special", "participants": 10 }, "__v": 0 } { "_id": { "$oid": "54b6aeaad7e410ec05dd1ca2" }, "person": { "name": "Something", "phone": "(011) 9468-1319", "email": "myemail@gmail.com", "obs": "" }, "event": { "full": "20/11/01 Classic", "date": "20/11/01", "name": "Special", "participants": 10 }, "__v": 0 } 

我只有这两个集合,并且我正在使用下面的代码给event.full的一个组,并且他们总结了参数(Number)字段。

这是代码:

 MyModel.aggregate( [ { "$group": { _id: "$event.full", participants: { "$sum": "$participants" }, count: { $sum: 1 } } }, { "$skip": ( page-1 ) * 15 }, { "$limit": 15 } ], function(err, obj) { res.send(obj); } ); 

这是返回以下对象:

 [ { _id: "20/11/01 Classic", participants: 0, count: 2 } ] 

为什么总和字段不工作? 如何修复?

你错过了这个event

 [ { "$group": { _id: "$event.full", participants: { "$sum": "$event.participants" }, count: { $sum: 1 } } }, { "$skip": ( page-1 ) * 15 }, { "$limit": 15 } ]