在涉及 $elemMatch 操作时,我发现 2.0.7 和 2.2.0 之间存在一些差异。
在 2.2.0 中,我确实通过以下查询返回了结果:
db.testColl.find( { "metadata" : {$elemMatch : {$gt : {age:23}, $lt : {age:99}} }});
在 2.0.7 中,我没有得到任何结果。
出于测试目的,我的 testColl 集合中只有一个文档:
{
"_id" : ObjectId("4fb2974cbedb4a626109b002"),
"metadata" : [
{
"age" : 59
},
{
"gender" : "FEMALE"
}
]
}
有谁知道为什么这在 2.2.0 中有效,但在 2.0.7 中无效?
根据这个:
http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24elemMatch
v1.4+ 支持 elemMatch
谢谢,盖伦