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 条评论
登录 后参与评论

相关文章

来自专栏Java学习网

Java中使用Hibernate系列之单向Set-based的关联学习(第四节)

接着学习,后续5个章节中我们将学习Hibernate关联映射的相关知识,前面我们已经映射了一个持久化实体类到表上,现在在这个基础上增加一些类之间的关联,首先我们...

2289
来自专栏张戈的专栏

Linux:sed命令详解

1. 简介 sed 是非交互式的编辑器。它不会修改文件,除非使用 shell 重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。 ? sed 编辑器逐...

4276
来自专栏技术最杂谈

map容器clear操作不会释放内存?

当第一次听到这个说法的时候确实有点惊讶。一直记得map容器底层红黑树会自动析构节点,并释放内存。在同事进行了代码验证,并百度了答案后,我也变得不确定起来了。

6116
来自专栏微服务生态

Dubbo简化类图

本文只是简单的将Dubbo的类结构图罗列出来,在下一次介绍中将重点讲解Dubbo框架的原理以及使用方法。

902
来自专栏salesforce零基础学习

salesforce 零基础学习(二十二)Test简单使用

本篇内容只是本人简单的mark开发中常出现的一些疑问,方便后期项目使用时奠定基础,如果对Test零基础童鞋,欢迎查看Test官方的使用介绍:  https://...

20010
来自专栏L宝宝聊IT

Linux基础——正则表达式

1393
来自专栏小狼的世界

Taints 与 Tolerations

节点亲和性是描述Pods如何分配到一个或一组节点的策略,与之相反 Taints 描述节点拒绝一个或一组Pods的策略。其实现原理为首先通过kubectl tai...

851
来自专栏互扯程序

java中的内存模型

现在是资源共享的时代,同样也是知识分享的时代,如果你觉得本文能学到知识,请把知识与别人分享。

1304
来自专栏地方网络工作室的专栏

Python3 初学实践案例(5)可设定长度和密码复杂级别的生成密码脚本另一种思路

Python3 初学实践案例(5)可设定长度和密码复杂级别的生成密码脚本另一种思路 在上一篇博文当中,我们用 python 脚本实现了一个可设定长度和密码复杂级...

1959
来自专栏happyJared

Linux私房菜:走进bash

减号-可用于连接一些特殊的stdin和stdout,像这个文件压缩和解压缩的示例:tar -cvf - /home | tar -xvf - -C /tmp/h...

772

扫码关注云+社区