MongoDB:使用一个键查找所有条目

时间:2017-02-24 16:13:49

标签: mongodb find

我正在尝试在新项目上使用mongoDB。

我的数据库中有这些文件:

{ "_id" : ObjectId("ID"), "local" : { "rank" : "null", "password" : "PASSWORD", "email" : "EMAIL" }, "__v" : 0 }
{ "_id" : ObjectId("ID"), "local" : { "rank" : "admin", "password" : "PASSWORD", "email" : "EMAIL" }, "__v" : 0 }
{ "_id" : ObjectId("ID"), "local" : { "rank" : "null", "password" : "PASSWORD", "email" : "EMAIL" }, "__v" : 0 }

我想查找所有具有空排名的文档。

所以我测试:

db.users.find({local:{rank:"null"}})

但它不起作用。

如果我使用命令测试:

db.users.find({"local":{ "rank" : "null", "password" : "PASSWORD", "email" : "EMAIL" }})

有效。为什么它不适用于第一个命令?

1 个答案:

答案 0 :(得分:0)

您对文档进行的两种比较。第二个与文档local匹配。

要比较文档中的特定字段,您必须使用点表示法。

 db.users.find({"local.rank":"null"}).

有关如何查询嵌入文档的更多信息。 https://docs.mongodb.com/manual/core/document/#embedded-documents