mongodb游标的使用

1、插入数据

for(var i=0;i<10000;i++){
 db.shop.insert({_id:i+1,name:"shop"+i,age:20+i})
}

2、查看数据数

db.shop.find().count()

3、获取游标、判断是否还存在数据

#获取游标,并存放在mycursor变量中
var mycursor = db.shop.find()
#以json形式打印一条
printjson(mycursor.next())
#查看游标是否到了尾部
printjson(mycursor.hasNext())

4、游标跳过

#skip()--->游标跳到9000位置
var mycursor = db.shop.find().skip(9000)
#limit()--->函数使用,跳过9000条,显示后面10条
db.shop.find().skip(9000).limit(10)

 5、游标高级操作函数

#创建一个游标
var mycursor = db.shop.find()
#对游标获取的对象(obj)进行遍历(forEach)打印(printjson)
mycursor.forEach(function(obj){printjson(obj)})

#查看当前批次剩余的未被迭代的文档数量
mycursor.objLeftBatch()

#对文档按age进行降序
语法:sort({filed:1/-1}) ;1,升序,-1降序
db.user.find().sort({age:-1})

#设置游标迭代次数(即每页显示的记录数)
DBQuery.shellBatchSize = 10 #eg:执行db.user.find(),显示10条数据

#只显示一条文档
db.shop.findOne()

#游标的操作函数有以下几个,可自行操作
hasNext    判断是否还有更多的文档                sort    对查询结果进行排序
next    用来获取下一条文档                    objsLeftInBatch    查看当前批次剩余的未被迭代的文档数量
toArray    将查询结果放到数组中                addOption    为游标设置辅助选项,修改游标的默认行为
count    获取结果集中总的文档数量            hint    为查询强制使用指定索引
limit    限制结果返回数量                    explain    用于获取查询执行过程报告
skip    跳过指定数目的文档                    snapshot    对查询结果使用快照

以后有时间再慢慢补充哈!有问题可以留言,一起学习、进步。

posted @ 2018-12-17 22:35  小白啊小白,Fighting  阅读(3446)  评论(0编辑  收藏  举报