MongoDB-基础-limit-skip-sort

MongoDB Limit() 方法

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

语法

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

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

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

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


MongoDB Skip() 方法

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

语法

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

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

实例

显示第二条:

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

注:skip()方法默认参数为 0 。skip是跳过的意思,上例 limit(1)表示从第一条记录开始,往后数1条,即显示第二条。但有skip后,表示跳过1个,就是说先执行skip跳过后,再进行limit。


MongoDB sort()方法

在MongoDB中使用使用sort()方法对数据进行排序,sort()方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而-1是用于降序排列。

语法

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

>db.COLLECTION_NAME.find().sort({KEY:1})

实例

col 集合中的数据如下:

> db.col.find()

{ "_id" : ObjectId("577f62810fe1ae602eda934e"), "title" : "java", "likes" : 100

}

{ "_id" : ObjectId("577f62960fe1ae602eda934f"), "title" : "php", "likes" : 90 }

{ "_id" : ObjectId("577f62ae0fe1ae602eda9350"), "title" : "c++", "likes" : 91 }

{ "_id" : ObjectId("577f62c60fe1ae602eda9351"), "title" : ".Net", "likes" : 93 }

按照likes升序:

> db.col.find({},{'title':1,'likes':1,_id:0}).sort({"likes":1})

{ "title" : "php", "likes" : 90 }

{ "title" : "c++", "likes" : 91 }

{ "title" : ".Net", "likes" : 93 }

{ "title" : "java", "likes" : 100 }

按照likes降序:

> db.col.find({},{'title':1,'likes':1,_id:0}).sort({"likes":-1})

{ "title" : "java", "likes" : 100 }

{ "title" : ".Net", "likes" : 93 }

{ "title" : "c++", "likes" : 91 }

{ "title" : "php", "likes" : 90 }

注: 如果没有指定sort()方法的排序方式,默认按照文档的升序排列。

from: http://www.runoob.com/mongodb/mongodb-limit-skip.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逆向技术

异常处理第一讲(SEH),筛选器异常,以及__asm的扩展,寄存器注入简介

异常处理第一讲(SEH),筛选器异常,以及__asm的扩展 一丶__Asm的扩展知识 ①丶使用关键字,解决局部变量申请问题 昨天已经介绍了__asm的基本用法,...

19810
来自专栏Crossin的编程教室

【Python 第65课】pickle

在之前的课程中,我们有讲到通过文件来保存、中转数据(参见第31、32、33课)。在使用文件存储时,通常需要对数据进行一些处理,按照一定的规范把数据整理成文本,再...

3194
来自专栏转载gongluck的CSDN博客

google protobuf学习笔记:编译安装、序列化、反序列化

简介 protobuf也叫protocol buffer是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实...

4885
来自专栏鸿的学习笔记

Python写的Python解释器(四)

真正的Python字节码 现在让进入真正的Python字节码中,从一个简单的函数开始:

683
来自专栏Java技术分享

第八章:Shiro和Spring的集成——深入浅出学Shiro细粒度权限开发框架

Standalone Applications

1788
来自专栏dotnet core相关

datatables 配套bootstrap样式使用小结(2) ajax篇

上一篇是介绍一下基本的用法,基本的原理是取出所有的数据,然后调用$.datatables(option)方法格式化,这种方法显然不太科学,所以ajax方式是必须...

591
来自专栏康怀帅的专栏

PHPUnit Mock 测试

本文介绍了 PHPUnit Mock 测试。 假设 foo 函数调用了 bar 函数,那么在对 foo 函数进行单元测试会有两个问题: foo 函数依赖于 ba...

2594
来自专栏向治洪

React Native之ViewPagerAndroid 组件

概述 今天我们来讲解一下关于 ViewPager 的使用,它是一个允许子视图左右滚动翻页的容器。我们知道在Android开发中系统有ViewPager这个组件,...

1768
来自专栏对角另一面

读Zepto源码之Form模块

Form 模块处理的是表单提交。表单提交包含两部分,一部分是格式化表单数据,另一部分是触发 submit 事件,提交表单。 读 Zepto 源码系列文章已经放到...

1940
来自专栏Java技术分享

第八章:Shiro和Spring的集成——深入浅出学Shiro细粒度权限开发框架

Standalone Applications nShiro 应用程序需要一个具有单例SecurityManager 实例的应用程序。请注意,这不会是一个静态的...

3855

扫描关注云+社区