我的架构设置是这样的:
{
_id:1234,
friends: [
{
"fid":1235
"is_user":true
},
{
"fid":1236
"is_user":true
},
{
"fid":1235
"is_user":false
}
]
}
我的要求是,给定 a _id
,我需要找到所有设置为 true 的朋友(fid)
ID is_user
。
我尝试了以下方法:
db.users.find({ friends: { $elemMatch : { is_app_user: true}}});
似乎在整个集合中给我返回结果,但我想要它作为一个 ID。所以我尝试了这个:
db.users.find({_id:1234},{friends: { $elemMatch : { is_app_user: true}}});
但这什么也没给我。另外,我只需要返回fid
. 有人可以帮我解决这个问题吗?