Mongo命令LIne按对象ID查询嵌入文档

时间:2012-05-29 23:17:29

标签: mongodb

我在我的帐户集中有以下内容:

   { "_id" : ObjectId("4fc55125476e0a27d9000003"), 
"created_at" : ISODate("2012-05-29T22:43:49Z"), 
"teachers" : [  {   
"_id" : ObjectId("4fc55125476e0a27d9000004"),   
"updated_at" : ISODate("2012-05-29T22:43:49Z"),     
"created_at" : ISODate("2012-05-29T22:43:49Z") 
} ], 
"updated_at" : ISODate("2012-05-29T22:43:49Z") 
}

我想查询具有_id 4fc55125476e0a27d9000003的教师的帐户。

如果我使用命令

db.accounts.findOne({"teachers._id" : ObjectId("4fc55125476e0a27d9000004")})

它返回null。

另外,当我使用find而不是findOne时,为什么mongo命令行会挂起。

1 个答案:

答案 0 :(得分:1)

正如其他人指出的那样,查询确实有效。不知道前几天发生了什么,我无法让它返回正确的结果。也许我使用的是错误的数据库。感谢您浪费时间的帮助和道歉。