MongoDB limit、skip 方法

MongoDB 使用 limit() 和 skip() 方法,限定查询结果的范围。

 

1. MongoDB limit() 语法

如果需要在 MongoDB 中读取指定数量的数据记录,可以使用 MongoDB 的 limit() 方法,limit() 方法接受一个数字参数,该参数指定从 MongoDB 中读取的记录条数。

limit() 方法基本语法如下所示:

>db.COLLECTION_NAME.find().limit(NUMBER)

 

2. MongoDB limit() 范例

集合 col 中的数据如下:

{ "_id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "编程宝库", "url" : "http://www.codebaoku.com", "tags" : [ "php" ], "likes" : 200 }
{ "_id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "编程宝库", "url" : "http://www.codebaoku.com", "tags" : [ "java" ], "likes" : 150 }
{ "_id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "编程宝库", "url" : "http://www.codebaoku.com", "tags" : [ "mongodb" ], "likes" : 100 }

以下实例为显示查询文档中的两条记录:

> db.col.find({},{"title":1,_id:0}).limit(2)
{ "title" : "PHP 教程" }
{ "title" : "Java 教程" }
>

注:如果你们没有指定 limit() 方法中的参数则显示集合中的所有数据。

 

3. MongoDB skip() 语法

我们除了可以使用 limit() 方法来读取指定数量的数据外,还可以使用 skip() 方法来跳过指定数量的数据,skip() 方法同样接受一个数字参数作为跳过的记录条数。

skip() 方法脚本语法格式如下:

>db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)

 

4. MongoDB skip() 范例

以下实例只会显示第 2 条文档数据:

>db.col.find({},{"title":1,_id:0}).limit(1).skip(1)
{ "title" : "Java 教程" }
>

注:skip() 方法默认参数为 0 。

MongoDB sort 排序:在 MongoDB 中使用 sort() 方法对数据进行排序,sort() 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。sort() 方法基本语法如下所示:db.COLLECTION_NAME.find().sort({KEY:1})