我是mongodb概念的新手
outerob{
_id:111,
name:xxx,
dependents : [ {
name:a,
age:11
}
{
name:b,
age:12
}
{
name:a,
age:11
}
]
}
我有这样的集合。我想算一些家属。请帮帮我这个
提前致谢
答案 0 :(得分:3)
您可以使用Aggregation框架找到数组中的项目数,如下所示:
db.myCollection.aggregate(
{ $unwind: "$dependents" },
{ $group: { _id: "$_id", count: { $sum: 1 }}}
);
您可以找到具有特定名称的项目数量,如下所示:
db.myCollection.aggregate(
{ $unwind: "$dependents" },
{ $match : {"dependents.name" : "a"}},
{ $group: { _id: "$_id", count: { $sum: 1 }}}
);
答案 1 :(得分:0)
尝试
x=db.collection.find({_id:111}).toArray()[0].dependents.length