MongoDB 操作手册CRUD查询指针

枚举遍历指针

概述

前面已经讲过,db.collection.find()如果没有指定给一个var声明的变量,将自动枚举前20条记录。

手动枚举指针

在mongo控制台中,将查询赋给一个var声明的变量,让其不自动枚举。

var cur = db.testData.find();

然后每次调用这个指针,将自动遍历20条

cur;

也可以使用指针的next()方法来获取下一条记录

var cur = db.testData.find();

while(cur.hasNext())

{

print(tojson(cur.next()));//此处打印操作可以用printjson来替换:printjson(cur.next());

}

可以用指针的forEach()方法来遍历指针数据:

var cur = db.testData.find();

cur.forEach(printjson);

枚举下标

在mongo控制台中,可以使用toArray()方法来访问指针结果。

var cur=db.testData.find();

var arr = cur.toArray();

var item = arr[2];

toArray()方法将加载所有查询结果到内存,这个方法将遍历完整个指针。

另外,一些驱动提供了直接使用数组下标的方式,这个方式是调用了toArray()的缩写。

var cur=db.testData.find();

var item = cur[3];

以上两句等同于cur.toArray()[3];

时间: 2024-11-03 21:01:00

MongoDB 操作手册CRUD查询指针的相关文章

MongoDB 操作手册CRUD查询

查询操作 基本查询 查询指定集合中的所有记录 db.testData.find()或者db.testData.find({}); 相等条件查询 db.testData.find({num:5});//查询num=5的记录 使用查询操作符声明多个条件 db.testData.find({num:{$in:[2,3,4]}});查询num为2,3,4的记录. 尽管可以使用$or操作符来执行同样的查询,但是当多个or条件都是在同一字段上的相等判断时,请使用$in而不是$or. and条件查询 db.t

MongoDB 操作手册CRUD 查询性能分析

分析查询性能 explain() cursor方法允许观察查询系统执行的操作.这个方法对于分析高效查询和决定如何使用索引进行查询是十分有用的.这个方法检测的是查询的操作,而不是查询执行时间.因为这个方法尝试多个查询计划,它并不能准确的反映出查询执行时间. 评估一个查询的性能 使用explain()方法,调用find()返回的指针的该方法即可. 例: 在type字段创建索引 db.testData.ensureIndex({'type':1}); 评估一个在type字段上的查询. db.testD

MongoDB 操作手册CRUD 事务 两步提交

执行两步提交 概述 这部分提供了多记录更新或者多记录事务,使用两步提交来完成多记录写入的模板.另外,可以扩展此方法来提供rollback-like功能. 背景 MongoDB对于单条记录的操作是原子性的:但是涉及多条记录的操作却不是原子性的.由于记录可能是相当复杂,并且有内嵌记录,单记录原子性操作提供了实际中常用的必要支持. 除了单记录的原子性操作,还有许多情况需要多记录操作事务,当执行一个包含一些列操作的事务时,就有以下要求: 原子性:如果一个操作失败,事务中之前的操作需要回滚到之前的状态 一

MongoDB 操作手册CRUD 删除 remove

删除记录 概述 在MongoDB中,db.collection.remove()方法用于删除集合中的记录.可以删除所有记录,删除所有符合条件的记录,或者是仅删除一条记录. 删除所有记录 删除一个集合中的所有记录,只要将一个空的查询对象{}传给remove()方法即可.remove()方法不删除索引. 例:db.testData.remove({}); 使用remove()方法删除一个集合中的所有记录,可能比使用drop()方法删除包含索引的整个集合,再重建集合和索引更高效. 删除符合条件的记录

MongoDB 操作手册CRUD 更新 update

修改记录 概述 MongoDB提供了update()方法用于更新记录.这个方法接受以下参数: 一个更新条件的JSON对象用于匹配记录,一个更新操作JSON对象用于声明更新操作,和一个选项JSON对象 声明查询条件,使用和查询一样的结构和语法. 默认情况下,update()更新单条记录,若要更新多条记录, 请使用multi选项. 更新记录中的指定字段 用于更新某个字段的某个值,MongoDB提供了update操作符,比如$set. 在执行更新操作时,一些操作符回创建没有的字段,如$set. 测试数

MongoDB 操作手册CRUD插入

插入操作 插入记录 1.插入一条记录 db.testData.insert({num:1,name:'a'}); 结果 WriteResult({ "nInserted" : 1 }) 2.查看插入的记录 db.testData.find(); 插入数组 1.定义数组 var arr = [{num:1,name:'a'},{num:2,name:'b'},{num:3,name:'c'}]; 2.插入记录 db.testData.insert(arr); 结果 nInserted显示

MongoDB多条件分页查询,新增,删除操作

概述 日志信息记录到MongoDB中,然后多条件查询 程序界面 MongoDBTools.java package com.admin.utils; import java.lang.reflect.Field; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; import java.util.regex.Pattern; import org.apache.log4

Cacti 操作手册

  Cacti是一款基于MySQL,SNMP,PHP等开发的工具.可以获得SNMP的信息通过图像的方式进行显示,通过B/S架构提供网管服务. Cacti将各端口信息.流量信息图形化的表示了出来,并能够查看设备的工作时间,状态及各个端口在某个时段的流量信息,cacti同时能够通过安装各种插件,达到自己所需要的某个功能. Cacti的注册 通过登录网页进入cacti页面,点击左边竖栏的Devices按钮,之后点击ADD进行添加设备的操作: 添加设备 Devices 1. Description给与设

实全邮件发送操作手册

实全邮件发送工具是采用VS2008 C# 开发.基于SMTP邮件传输协议.使用.Net SmtpClient进行的邮件发送客户端工具.SMTP 是一种TCP协议支持的提供可靠且有效电子邮件传输的应用层协议.SMTP 是建立在 TCP上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信有关的通知.工具由邮件管理客户端及邮件发送服务程序组成.邮件管理客户端主要用于邮件发送配置及邮件内容管理:邮件发送服务程序是Windows服务程序,它将即时读取邮件进行发送.工具可广泛用于应用系统跟踪.报警.工