MongoDB查询文档
find() 方法
想要查询中的文档,可以使用 MongoDB 中的 find() 方法,find() 方法可以将查询结果以非结构化的方式展示出来,其语法格式如下:db.collection_name.find(query, projection)
语法说明如下:query:可选参数,使用查询操作符指定查询条件;
projection:可选参数,使用投影操作符指定返回的键。查询时若要返回文档中所有键值,只需省略该参数即可(默认省略)。
【示例】向中插入一些数据并使用 find() 方法查询中的所有文档:
> db.mycol.insert([
... {
... title: "MongoDB教程",
... description: "MongoDB 是一个 Nosql 数据库",
... by: "编程帮",
... url: "http://www.biancheng网站站点" rel="nofollow" />
【示例】在使用 find() 查询数据时,使用 pretty() 方法来格式化查询到的数据:db.collection_name.find(query, projection).pretty()
> db.mycol.find().pretty()
{
"_id" : ObjectId("6031c02ae492ab9be9450302"),
"title" : "MongoDB教程",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "编程帮",
"url" : "http://www.biancheng网站站点" rel="nofollow" />
【示例】使用 findOne() 方法从中查询“title”=“MongoDB教程”的文档:db.collection_name.findOne(query, projection)
> db.mycol.findOne({title:"MongoDB教程"})
{
"_id" : ObjectId("6031c02ae492ab9be9450302"),
"title" : "MongoDB教程",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "编程帮",
"url" : "http://www.biancheng网站站点" rel="nofollow" />
【示例】在中查询“title”=“MongoDB教程”同时“by”=“编程帮”的文档:db.collection_name.find({$and:[{<key1>:<value1>}, {<key2>:<value2>}], ...})
> db.mycol.find({$and:[{title:"MongoDB教程"}, {by:"编程帮"}]}).pretty()
{
"_id" : ObjectId("6031c02ae492ab9be9450302"),
"title" : "MongoDB教程",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "编程帮",
"url" : "http://www.biancheng网站站点" rel="nofollow" />
> db.mycol.find({title:"MongoDB教程", by:"编程帮"}).pretty()
{
"_id" : ObjectId("6031c02ae492ab9be9450302"),
"title" : "MongoDB教程",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "编程帮",
"url" : "http://www.biancheng网站站点" rel="nofollow" />
【示例】在中查询“title”=“MongoDB教程”或者“by”=“编程帮”的文档:db.collection_name.find({$or:[{<key1>: <value1>}, {<key2>:<value2>}]})
> db.mycol.find({$or:[{title:"MongoDB教程"}, {by:"编程帮"}]}).pretty()
{
"_id" : ObjectId("6031c02ae492ab9be9450302"),
"title" : "MongoDB教程",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "编程帮",
"url" : "http://www.biancheng网站站点" rel="nofollow" />
> db.mycol.find({"likes": {$gt:100}, $or: [{"by": "编程帮"},{"title": "MongoDB教程"}]}).pretty()
{
"_id" : ObjectId("6031c02ae492ab9be9450302"),
"title" : "MongoDB教程",
"description" : "MongoDB 是一个 Nosql 数据库",
"by" : "编程帮",
"url" : "http://www.biancheng网站站点" rel="nofollow" />