swer332 发表于 2015-1-5 08:48:08

【MongoDB学习笔记14】MongoDB的查询:find基础

MongoDB中使用find来进行查询,返回一个集合中的文档的子集;
返回文档集合blog中的所有文档:

1
2
3
4
> 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" }   
>




返回指定的文档:

1
2
3
> db.post.find({"id":1})   
{ "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "name" : "joe", "age" : 30, "comments" : [ "test2", "test9", "test5" ], "sex" : 1, "school" : "marry" }   
>




返回指定的键值:

1
2
3
4
> db.post.find({},{"id":1,"age":1})   
{ "_id" : ObjectId("54a530c3ff0df3732bac1681"), "id" : 2, "age" : 30 }   
{ "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "age" : 30 }   
>




默认总是会返回“_id”键,使用下面的方法可以不返回“ _id”键:

1
2
3
4
> db.post.find({},{"id":1,"age":1,"_id":0})   
{ "id" : 2, "age" : 30 }   
{ "id" : 1, "age" : 30 }   
>




   
可以将多个条件组合在一起,例如查询名字为“Joe”且ID为1的文档:


1
2
3
4
5
6
> 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" }   
>







1301664724 发表于 2017-3-6 14:24:33

学习了,多谢!!!{:6_388:}
页: [1]
查看完整版本: 【MongoDB学习笔记14】MongoDB的查询:find基础