MongoDB中如何使用游标-创新互联

今天就跟大家聊聊有关MongoDB中如何使用游标,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、虚拟空间、营销软件、网站建设、常山网站维护、网站推广。

一、什么是游标?

游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力。

游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标可以被看作是一个查询结果集(可以是零条、一条或由相关的选择语句检索出的多条记录)和结果集中指向特定记录的游标位置组成的一个临时文件,提供了在查询结果集中向前或向后浏览数据、处理结果集中数据的能力。有了游标,用户就可以访问结果集中任意一行数据,在将游标放置到某行之后,可以在该行或从该位置的行块上执行操作。

二、MongoDB的游标

在MongoDB中,使用db.collection.find()方法将返回一个游标。如果要访问文档,我们需要使用游标的迭代器。但是,在mongo shell中,如果没有给返回的游标指定变量,游标将自动首先返回前20条记录。下面我们通过几个具体的例子,来说明如何使用游标。

  • 定义游标

var mycursor = db.emp.find()
  • 使用游标访问文档

var mycursor = db.emp.find()
while(mycursor.hasNext()){
    printjson(mycursor.next())
}
也可以像这样:mycursor.forEach(printjson)
  • 游标和数组

var mycursor = db.emp.find()  定义游标
var myarray  = mycursor.toArray() 将游标转成数组
var myDocument = myarray[3]       通过数组元素访问文档
  • 分页查询: skip和limit

每页显示5条记录
var mycursor = db.emp.find().limit(5)          第一页
var mycursor = db.emp.find().limit(5).skip(5)  第二页

关闭游标:默认情况下,10分钟内没有使用使用的游标会被自动关闭。可以使用.noCursorTimeout()来设置游标的关闭选项,这时就需要手动关闭游标。

var mycursor = db.emp.find().noCursorTimeout()

看完上述内容,你们对MongoDB中如何使用游标有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联-成都网站建设公司行业资讯频道,感谢大家的支持。


文章标题:MongoDB中如何使用游标-创新互联
URL链接:http://pwwzsj.com/article/ddicse.html