我有一个 mongodb/mongoskin 聚合请求,如下所示:
db.collection(customerTable + '_earnedinfluencers').aggregate([
{
$group: {
_id: '$user',
name: '', // to be filled separately
username: '', // to be filled separately
picture: '', // to be filled separately
city: '', // to be filled separately
kids: { $sum: '$kids' },
revenue: { $sum: '$dayIncome' },
kidsRevRatio: { $divide: [ { $sum: '$kids' }, { $sum: '$dayIncome' } ] }
},
$match: {
richness: { $gte: variable1 },
kids: { $lt: variable2 },
hobbies: { $in: ['hobby1', 'hobby2', 'hobby3', 'hobby4'] },
event: { $in: schoolfestival },
event: { $ne: 0 }
},
$project: {
_id: 0,
user: '$_id',
name: 1,
username: 1,
picture: 1,
city: 1,
kids: 1,
revenue: 1,
kidsRevRatio: 1
}
}
], function(err, result) {
// do something with err and result
});
上面的代码给出了以下错误:
Error: {"name":"MongoError","errmsg":"exception: A pipeline stage specification object must contain exactly one field.","code":16435,"ok":0}
一般来说,我是 mongo 和 db 的新手,不知道我做错了什么。