/* 1 */
{
"_id" : ObjectId("57402dc7beb185de3efa6ac3"),
"name" : "test1",
"group" : [
{
"$ref" : "Group",
"$id" : ObjectId("56a60c73f5b95a61e20b31b9")
}
],
"classId" : "56a60c73f5b95a61e20b31b9",
"like" : [],
"fans" : 2
}
查询用户的粉丝数
db.User.aggregate([{
$group:{_id:"$name",count:{$sum:1},total:{$sum:"$fans"}}
}])
db.User.aggregate([{
$group:{_id:"$name",count:{$sum:1}}
}])
查询粉丝数大于5的名字
db.User.aggregate([
{$match:{fans:{$lt:5}}},
{$group:{_id:"$name",fans:{$sum:1}}}
]);
注意match和group的先条件和后条件,match后再group。。
也可以 在group后match
db.User.aggregate([
{$match:{fans:{$gte:2}}},
{$group:{_id:"$name",count:{$sum:1}}},
{$match:{_id:"test1"}}
]);
在粉丝数大于2里面找名字为test1的人