MongoDB中使用find来进行查询,返回一个集合中的文档的子集;
返回文档集合blog中的所有文档:
> db.post.find() { "_id" : ObjectId("54a530c3ff0df3732bac1681"), "id" : 2, "name" : "joe", "age" : 30, "sex" : 1, "school" : "marry" } { "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "name" : "joe", "age" : 30, "comments" : [ "test2", "test9", "test5" ], "sex" : 1, "school" : "marry" } >
返回指定的文档:
> db.post.find({"id":1}) { "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "name" : "joe", "age" : 30, "comments" : [ "test2", "test9", "test5" ], "sex" : 1, "school" : "marry" } >
返回指定的键值:
> db.post.find({},{"id":1,"age":1}) { "_id" : ObjectId("54a530c3ff0df3732bac1681"), "id" : 2, "age" : 30 } { "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "age" : 30 } >
默认总是会返回“_id”键,使用下面的方法可以不返回“ _id”键:
> db.post.find({},{"id":1,"age":1,"_id":0}) { "id" : 2, "age" : 30 } { "id" : 1, "age" : 30 } >
可以将多个条件组合在一起,例如查询名字为“Joe”且ID为1的文档:
> db.post.find({"name":"joe"}) { "_id" : ObjectId("54a530c3ff0df3732bac1681"), "id" : 2, "name" : "joe", "age" : 30, "sex" : 1, "school" : "marry" } { "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "name" : "joe", "age" : 30, "comments" : [ "test2", "test9", "test5" ], "sex" : 1, "school" : "marry" } > db.post.find({"name":"joe","id":1}) { "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "name" : "joe", "age" : 30, "comments" : [ "test2", "test9", "test5" ], "sex" : 1, "school" : "marry" } >