• 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    对查询结果使用快照

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

  • 相关阅读:
    SqlServer事务日志满的解决方案
    关于.net反射和metadata加载致Jeffray Zhao等几位和firelong
    Context Root选/的原则
    [继续讨论]关于Windows PE和.net assembly的加载
    有趣的重写GetType()方法
    对Wintercn关于函数式编程的文章评论
    The experience to config Cisco 2811 for VOIP
    关于c#静态方法和实例方法的辨析和应用
    防止刷新时,密码输入框中的信息丢失
    计算百分比 JS
  • 原文地址:https://www.cnblogs.com/ywjfx/p/10134431.html
Copyright © 2020-2023  润新知