Mongodb基础实践(二)

  在前面的文章里面主要介绍了MongoDB的文档,集合,数据库等操作和对文档的增、删、改相关知识,接下来会总结一点有关查询的相关知识。

  在MySQL中,我们知道数据查询是优化的主要内容,读写分离等技术都是可以用来处理数据库查询优化的,足以见数据库查询是每个系统中很重要的一部分,之前介绍了find的简单使用,下面会介绍一些相对比较复杂一点的查询。

一、数据查询

 MySQL数据库中主要是用select 结合where子句实现数据的查询,功能特别强大,例如多表联合查询、支持正则表达式等。不在这里做过多的相关介绍。这里主要介绍MongoDB的相关查询,MongoDB中主要用find()实现数据的查询,同时也可以使用一些条件限制。

1.1显示单条数据

  在上篇文章中提到了find()的使用,但是每次查询数据,都是查询所有的,显示其中的一部分,可以用it迭代。有时候我们想要查询其中的一条数据,具体操作要根据具体需求实现。

MongoDB 查询数据的语法

1
db.collection.find(query, projection)

    query :可选,使用查询操作符指定查询条件
    projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。可以使用 pretty() 方法以易读的方式来读取数据,,语法格式如下

1
>db.col.find().pretty()

pretty() 方法以格式化的方式来显示所有文档。

例如:

1
2
3
4
5
6
7
8
9
10
11
db.winner.find().pretty()
"_id" : ObjectId("592e7d1caaa464fa8a557e95"), "winne" : 1955 }
"_id" : ObjectId("592e7d1eaaa464fa8a557e96"), "winne" : 1955 }
"_id" : ObjectId("592e7d1faaa464fa8a557e97"), "winne" : 1955 }
"_id" : ObjectId("592e7d1faaa464fa8a557e98"), 
上一篇:获取对固定列不重复的新DataTable


下一篇:Python网络编程——静态Web服务器面向对象