我正在使用此查询来查找位于子文档中的数组中的匹配值。
db.providers.find({assignments
: {assignment
: {$elemMatch
: {as_to
: 'Present'}}}}, {_id : 1})
文档的结构如下所示:
"dev_active_interviews" : 0,
"assignments" : {
"assignment" : [
{
"as_rate" : "$3.89",
"as_from" : "05/2011",
"as_to" : "Present"
},
{
"as_rate" : "$2.22",
"as_from" : "11/2010",
"as_to" : "Past"
}
]
}
它应该可以工作,因为首先我选择了子文档,然后我用 $elemMatch 遍历了数组,但没有显示任何内容。