查询命令 本页介绍了文档数据库服务的主要查询命令。 文档数据库服务主要查询命令有: find():最基本的查询命令,基础语法是:db.collection.find(query, projection)。 query:选择条件,类似于 WHERE 子句。 projection:可选,使用来projection展示查询的字段,类似于SQL的SELECT。通过{ field: 1 }这样的语法可以指定要返回的字段,其中1表示要返回该字段,0表示不返回该字段 。 示例: //查询age20的数据 db.students.find({age: 20}) //查询age20的数据,查询的结果只返回name,不返回id db.students.find({age: 20}, {name: 1, id: 0}) findOne():查找一条数据,会返回第一条匹配到的数据。语法: db.collection.findOne(query, projection) 示例: db.students.findOne({age: 20}) limit() 和 skip():分页查询,limit() 指定数据条数,skip()跳过前几条: db.students.find().limit(5) db.students.find().limit(5).skip(10) // 跳过前10条,返回5条数据 sort():排序。按照一个字段排序,orderly 参数指定排序方式,1为降序,1为升序,默认升序: db.students.find().sort({age:1}) db.students.find().sort({age: 1}) //降序 count(): 统计结果数量: db.collection.find(query).count() 也就是说, 文档数据库服务查询主要通过 find() 和查询条件的组合来实现,在find()中使用limit()、skip()、sort()、count()等方法进行查询控制。 还有一点需要留意,查询的结果,返回的是一个Cursor。Cursor使用完毕后要及时关闭,否则会产生内存堆积。