mongodb游标学习(五)

时间:2022-11-21 11:26:32

mongodb语法与js类似

1.快速插入10000条数据

for(var i=0;i<10000;i++) {
db.bar.insert({_id:i+1,title:'hello world',content:'aaa'+i});
}

mongodb游标学习(五)

2.游标

例子1 手工获取游标数据

var mycursor = db.bar.find({_id:{$lte:5}});
printjson(mycursor.next())

mongodb游标学习(五)

例子2 获取游标中的全部数据

var mycursor = db.bar.find({_id:{$lte:5}});
while(mycursor.hasNext()){
printjson(mycursor.next());
}

mongodb游标学习(五)

例子3 系统自带的函数forEach(使用回调函数获取数据) 

var mycursor = db.bar.find({_id:{$lte:5}});
mycursor.forEach(function(obj){printjson(obj)})

mongodb游标学习(五)

mongodb游标学习(五)

3.游标在分页中使用

例子1 比如查到10000行,跳过9995行

var mycursor = db.bar.find().skip(9995);
mycursor.forEach(function(obj){printjson(obj)})

mongodb游标学习(五)

例子2 查询第901页,每页10条

mongodb游标学习(五)

另一种方式(不要随意使用toArray,性能差)

var mycursor = db.bar.find().skip(9000).limit(10);
printjson(mycursor.toArray()[4])