我有一个名为"blog"的集合,我希望根据3个状态计算每个用户博客,例如:已发布,待定和已批准 . 结果应该是这样的
[{
"_id" : ObjectId('dshe1hhdsa12dashe21dqs'),
"blogId" : 'dhsad78sa6dsa66ds6ds6ds8ds',
"published" : 10,
"approved" : 15,
"pending" : 5
},
{
"_id" : ObjectId('dshe1hhdsa12dashe21dqs'),
"blogId" : 'dhsad78sa6dsa66ds6ds6ds8ds',
"published" : 10,
"approved" : 15,
"pending" : 5
}]
我想为此使用db.collection.aggregate() .
编辑:我试过这个
db.blog.aggregate([
{ $match: { status: { $in : ['Published', 'Approved', 'Pending']}}},
{ $project : { _id: 1, blogId: 1, status: 1} }]).pretty();
1 回答
好的,我得到了解决方案,我们走了 .