您当前的位置:首页 > 计算机 > 软件应用 > 数据库 > MongoDB

MongoDB limit()与skip():限制查询条数

时间:10-07来源:作者:点击数:

当我们在使用 find() 方法查询集合中文档的时侯,会一次性的将所有符合条件的文档全部展示出来,但我们可能并不需要全部的查询结果(比如在做分页处理时),这时该怎么做呢?下面就来介绍一下。

limit() 方法

MongoDB 中要限制查询的记录条数可以使用 limit() 方法,该方法接收一个数字作为参数,用来设置要显示的记录数,如下所示:

db.collection_name.find().limit(number)

【示例】假设在集合“course”中有如下数据:

> db.course.find()
{ "_id" : ObjectId("60331a7eee79704753940391"), "title" : "HTML教程", "author" : "城东书院", "url" : "https://www.cdsy.xyz/computer/programme/html_div_css/" }
{ "_id" : ObjectId("60331a7eee79704753940392"), "title" : "C#教程", "author" : "城东书院", "url" : "https://www.cdsy.xyz/computer/programme/dotNet/" }
{ "_id" : ObjectId("60331a7eee79704753940393"), "title" : "MongoDB教程", "author" : "城东书院", "url" : "https://www.cdsy.xyz/computer/soft/database/mongodb/" }

若要查询其中的两条,则可以像下面这样:

> db.course.find({},{"title":1,_id:0}).limit(2)
{ "title" : "HTML教程" }
{ "title" : "C#教程" }

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

skip() 方法

除了 limit() 方法外,MongoDB 中还提供了另一种方法 skip(),它同样也可以接收一个数字类型的参数,用来设置要跳过的文档数。其语法格式如下:

db.collection_name.find().skip(number)

【示例】查询集合中的所有文档,并跳过两条记录:

> db.course.find({},{"title":1,_id:0}).skip(2)
{ "title" : "MongoDB教程" }

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

另外,limit() 方法与 skip() 方法可以联合使用来实现类似分页的效果,如下所示:

> db.course.find({},{"title":1,_id:0}).skip(1).limit(2)
{ "title" : "C#教程" }
{ "title" : "MongoDB教程" }
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门