MongoDB 游标

所谓的游标就是指的数据可以一行行的进行操作,需要使用find()函数进行游标控制。
例如db.students.find() 返回值就是一个游标(var cursor = db.students.find())。对于返回的游标要想进行操作,需要两个函数:

1、判断是否有下一行数据:hasNext()
2、取出当前数据:next()

db.students.find().hasNext()
true
db.students.find().next()
{
"_id" : ObjectId("5be9271d16d1fcb72bc0dd41"),
"name" : "张三",
"sex" : "男",
"score" : 70,
"address" : "西湖区",
"course" : [
[
"语文",
"政治"
]
]
}

这样写的话不管调用多少次next返回的都是张三,因为每次find都相当于获取一个新的游标,如果想正常返回next的值,需要用同一个游标:

var cursor = db.students.find()
cursor.hasNext()
true
cursor.next()
{
"_id" : ObjectId("5be9271d16d1fcb72bc0dd41"),
"name" : "张三",
"sex" : "男",
"score" : 70,
"address" : "西湖区",
"course" : [
[
"语文",
"政治"
]
]
}
cursor.next()
{
"_id" : ObjectId("5be9274916d1fcb72bc0dd42"),
"name" : "李思",
"sex" : "男",
"age" : 20,
"score" : 69,
"address" : "拱墅区"
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 任何数据库中查询都是最麻烦的,在MongoDB中对于查询的支持非常到位,有关系运算,逻辑运算,数组运算等等首先对于...
    许先森的许阅读 3,072评论 0 1
  • Mongodb中find()函数返回一个游标,客户端通过对游标进行一些设置就能对查询结果进行有效地控制,如可以限制...
    幸福镰刀阅读 1,152评论 0 0
  • 通俗的说,游标(cursor)不是查询结果,而是查询返回的资源或接口,通过此接口可逐条读取,类似PHP中fopen...
    JunChow520阅读 6,409评论 0 3
  • 只要是数据库那么就绝对离不开最为核心的功能: C U R D ,所以在Mongo 里面对于数据的操作也是有支持的,...
    Mr_米饭阅读 339评论 2 1
  • 1. 基本查询: 构造查询数据。 db.test.findOne() { "_id" : ObjectId("4f...
    DavieKong阅读 1,245评论 0 1