mongo中游标

简介: 1.手动循环访问游标    mongo中我们常用的查询方式db.collection.find()方法其实返回的就是游标,只不过我们并未给返回的游标分配变量,我们所看到的的查询数据也就是游标自动迭代得出的(在shell中自动迭代20次).

1.手动循环访问游标

    mongo中我们常用的查询方式db.collection.find()方法其实返回的就是游标,只不过我们并未给返回的游标分配变量,我们所看到的的查询数据也就是游标自动迭代得出的(在shell中自动迭代20次).下面便使用手动迭代游标

db.users.insert([{name:1},{name:2},{name:3}])

然后使用变量来接收返回的游标

var myCursor = db.users.find()

 然后我们再次调用myCursor即可输出

 我们还可以使用hasNext()next()方法来执行游标

while(myCursor.hasNext())
{
    printjson(myCursor.next())
}

 也可以使用游标的forEach()方法来执行游标

myCursor.forEach(printjson)

 在shell中,可以使用toArray()方法来迭代游标并返回数组中文档

  注意:toArray()方法会完成迭代,所以游标会耗尽

var arrdoc = myCursor.toArray()
 for(var i = 0;i<arrdoc.length;i++)
{
    printjson(arrdoc[i])
}

2.查询游标保留文档数

  mongo中objsLeftInBatch()方法可以查询由表中保留的文档数

 

相关文章
|
存储 关系型数据库 MySQL
mysql中游标的运用
最近项目中应对实际情况的需求,又修改了主业务,导致表结构设计不合理,之后又修改了表结构,但是表结构修改之后历史数据需要升级,来适应新的表结构的一系列增删改查。
|
SQL 存储 程序员
数据库:SQLServer中游标的用法笔记
游标可以理解为SQL Server的一种数据访问机制,它允许用户访问数据的维度是数据行。用户可以对每一行数据进行单独处理,从而降低系统开销和潜在的阻隔情况,
数据库:SQLServer中游标的用法笔记
|
Cloud Native 关系型数据库 分布式数据库
新年独家 | 1张图看懂阿里云数据库全景
1张图,1分钟,Get阿里云数据库的高光时刻!
867 0
新年独家 | 1张图看懂阿里云数据库全景
|
机器学习/深度学习 算法 搜索推荐
圣诞礼遇!【推荐解决方案四部曲】请查收——第二部:基于对象特征的推荐
本次实验选用的是PAI-Studio作为实验平台,仅通过拖拽组件就可以快速实现一套基于对象特征的推荐系统。
698 0
|
SQL 关系型数据库 Java
这十个MySQL经典错误,老司机一定遇到过!你呢?
Top  1:Too many connections(连接数过多,导致连接不上数据库,业务无法正常进行) 问题还原 解决问题的思路: 1、首先先要考虑在我们 MySQL 数据库参数文件里面,对应的max_connections 这个参数值是不是设置的太小了,导致客户端连接数超过了数据库所承受的最大值。
1440 0
derby_学习_00_资源帖
一、精选资料         二、参考资料
847 0