mongodb的Limit|skip|投影|排序|消除重复
Limit
- 方法limit():用于读取指定数量的文档
- 语法:
db.集合名称.find().limit(NUMBER)
- 参数NUMBER表示要获取文档的条数
- 如果没有指定参数则显示集合中的所有文档
- 例1:查询2条学生信息
db.stu.find().limit(2)
skip
- 方法skip():用于跳过指定数量的文档
- 语法:
db.集合名称.find().skip(NUMBER)
- 参数NUMBER表示跳过的记录条数,默认值为0
- 例2:查询从第3条开始的学生信息
db.stu.find().skip(2)
一起使用
方法limit()和skip()可以一起使用,不分先后顺序
创建数据集
for(i=0;i<15;i++){db.t1.insert({_id:i})}
- 查询第5至8条数据
db.stu.find().limit(4).skip(5)
或
db.stu.find().skip(5).limit(4)
投影
- 在查询到的返回结果中,只选择必要的字段,而不是选择一个文档的整个字段
- 如:一个文档有5个字段,需要显示只有3个,投影其中3个字段即可
- 语法:
- 参数为字段与值,值为1表示显示,值为0不显示
db.集合名称.find({},{字段名称:1,...})
- 对于需要显示的字段,设置为1即可,不设置即为不显示
- 特殊:对于_id列默认是显示的,如果不显示需要明确设置为0
- 例1
db.stu.find({},{name:1,gender:1})
- 例2
db.stu.find({},{_id:0,name:1,gender:1})
排序
- 方法sort(),用于对结果集进行排序
- 语法
db.集合名称.find().sort({字段:1,...})
- 参数1为升序排列
- 参数-1为降序排列
- 例1:根据性别降序,再根据年龄升序
.stu.find().sort({gender:-1,age:1})
统计个数
- 方法count()用于统计结果集中文档条数
- 语法
db.集合名称.find({条件}).count()
- 也可以与为
db.集合名称.count({条件})
- 例1:统计男生人数
db.stu.find({gender:1}).count()
- 例2:统计年龄大于20的男生人数
db.stu.count({age:{$gt:20},gender:1})
消除重复
- 方法distinct()对数据进行去重
- 语法
db.集合名称.distinct('去重字段',{条件})
- 例1:查找年龄大于18的性别(去重)
db.stu.distinct('gender',{age:{$gt:18}})
mongodb的Limit|skip|投影|排序|消除重复的更多相关文章
- MongoDB 之 Limit 选取 Skip 跳过 Sort 排序 MongoDB - 7
我们已经学过MongoDB的 find() 查询功能了,在关系型数据库中的选取(limit),排序(sort) MongoDB中同样有,而且使用起来更是简单 首先我们看下添加几条Document进来 ...
- 7,MongoDB 之 Limit 选取 Skip 跳过 Sort 排序
我们已经学过MongoDB的 find() 查询功能了,在关系型数据库中的选取(limit),排序(sort) MongoDB中同样有,而且使用起来更是简单 首先我们看下添加几条Document进来 ...
- MongoDB之Limit选取Skip跳过Sort排序
1.Limit选取 我要从Document中取出多少个 只要2条Document db.Wjs.find().limit(2) 2.Skip跳过 我要跳过多少个Document 我要跳过前两个Docu ...
- mongodb sort limit和skip用法
> db.mediaCollection.find().skip().toArray() [ { "_id" : ObjectId("5353463193efef0 ...
- 菜鸟的mongoDB学习---(五)MongoDB的limit、skip、sort方法
limit方法 假设你须要在MongoDB中读取指定数量的数据记录.能够使用MongoDB的Limit方法,limit()方法接受一个数字參数,该參数指定从MongoDB中读取的记录条数. mongo ...
- MongoDB(课时27 消除重复数据)
3.7.2 消除重复数据 在SQL中对于重复的数据可以使用"DISTINCT"消除,在MongoDB中依然支持.(distinct不同的) 范例:查询所有name的信息 本次的操作 ...
- Sublime文本排序&查找重复行&删除重复行
排序 按F9或者选择菜单:Edit > Sort Lines,对每行文本进行排序 查找重复行 排序好后,按Ctrl+F,调出查找面板 查找字符串: ^(.+)$[\r\n](^\1$[\r\n] ...
- 2.C#中通过委托Func消除重复代码
阅读目录 一:重复的代码 二:C#中通过委托Func消除重复代码 一:重复代码 public class Persion { public string Name { get; set; } ...
- 1.C#中通过委托Action消除重复代码
阅读目录 一:重复的代码 二:使用委托消除重复代码 一:重复的代码 我们在写一些方法的时候,会在里面可能出现异常的地方使用try catch语句,这样每个方法都会有try catch语 ...
随机推荐
- FIFO 的控制逻辑---verilog代码
FIFO 的控制逻辑---verilog代码 //fifo的例化 wire fifo_full; wire fifo_empty; : ] fifo_dout; :]rd_data_count; :] ...
- java小程序(课堂作业04)
请编写一个程序,使用上述算法加密或解密用户输入的英文字串要求设计思想.程序流程图.源代码.结果截图. 1,设计思想: 先输入索要加密的字符串由于此程序比较基础所以只考虑大写字母,然后用toCharAr ...
- Emacs的一些事情(与Vi的争议及使用)
一年成为Emacs高手(像神一样使用编辑器)推荐文章 http://ftp.gnu.org/gnu/emacs/windows/http://blog.csdn.net/redguardtoo/art ...
- plsql 创建表空间、用户、赋予权限
plsql 创建表空间.用户.赋予权限 --用户名:testuser --密码:bzhs!*6 --1.创建表空间--用SYSTEM用户登陆数据库,执行下面语句创建表空间CREATE TABLESPA ...
- codeblocks “can't find compiler executable in yourconfigured search ……”
新安装的codeblocks 16.01,安装后打开提示如下,没法用..原因是编译器并没有找对自己安装的 mingw 的安装位置. 解决办法:如下图点击 Auto-detect 之后,会看到位置信息变 ...
- LeetCode——18. 4Sum
一.题目链接:https://leetcode.com/problems/4sum/ 二.题目大意: 给定一个数组A和一个目标值target,要求从数组A中找出4个数来使之构成一个4元祖,使得这四个数 ...
- bzoj5008: 方师傅的房子
Description 方师傅来到了一个二维平面.他站在原点上,觉得这里风景不错,就建了一个房子.这个房子是n个点的凸多边形 ,原点一定严格在凸多边形内部.有m个人也到了这个二维平面.现在你得到了m个 ...
- javac命令和java命令
要知道java是分两部分的:一个是编译,一个是运行. javac:负责的是编译的部分,当执行javac时,会启动java的编译器程序.对指定扩展名的.java文件进行编译. 生成了jvm可以识别的字节 ...
- 延时队列:Java中的DelayQueue
Java中的DelayQueue位于java.util.concurrent包下,本质是由PriorityQueue和BlockingQueue实现的阻塞优先级队列. 放入队列的元素需要实现java. ...
- python programming作业5
# -*- coding: utf-8 -*- class ageError(Exception): pass class salaryError(Exception): pass class s ...