我在我的数据库中有这样的文件:
{
_id: ObjectId,
arr1: [
{
_id: 1,
name: "David"
},
{
_id: 2,
name: "John"
},
...
],
arr2: [
{
_id:100,
name: "Ron"
},
{
_id:150,
name: "Chris"
},
...
]
}
我想为Mongodb使用2.0 C#驱动程序并选择一个特定的内部元素 .
例如:
getPerson(id, personId)
通过检查arr1和arr2,只返回正确文档中的人(具有给定id的文档) .
如何在服务器上执行此操作(不是首先获取文档并使用C#查询内部数组)?
1 回答
重申:如果这是你寻求的:
鉴于"outer" _id,首先尝试匹配 .
然后,在arr1或arr2中匹配"inner" _id
那么如果外部_id在
getPerson(id, personId)
中是id
而内部_id在getPerson(id, personId)
中是personId
那么这应该产生满足#1和#2的整体文档: