MongoDB 4.0.10 游标
- 游标:游标不是查询结果,而是查询的返回资源或者接口,通过这个接口,可以逐条读取
1 var myCursor = db.col.find() // 游标声明 2 myCursor.count() // 返回Curser对象表示的文档数量,是经过find函数查询的 3 myCursor.explain() // 返回一个文档,描述用来返回查询结果的执行集合 4 myCursor.max(doc) // 指定Cursor返回文档的最大值,如max({num:1000}),则返回的结果中num属性最大为1000 5 myCursor.min(doc) // 指定Cursor返回文档的最小值 6 print(myCursor.next()) // 打印[object BSON];mycuser.next():获取游标的下一个单元 7 printjson(myCursor.next()) 8 print(myCursor.hasNext()) // mycuser.hasNext():判断是否还有下一个 9 myCursor.toArray() // 以数组形式返回结果 10 printjson(myCursor.toArray()[2]) // 返回数组中的第三个结果 11 // while循环 12 var myCursor = db.col.find() 13 while(myCursor.hasNext()){ 14 printjson(myCursor.next()) 15 } 16 // for循环 17 for(var myCursor = db.col.find(); myCursor.hasNext(); ){ 18 printjson(myCursor.next()) 19 } 20 // forEach循环 21 var myCursor = db.col.find() 22 myCursor.forEach(function(obj){ 23 printjson(obj) 24 }) 25 // map操作:迭代Curser中的每一个文档,并对其执行指定的函数,返回的结果加入到一个数组,并返回这个数组 26 var myCursor = db.col.find() 27 myCursor.forEach(function(doc){ 28 return doc.name; // name是文档的属性 29 }) 30 var myCursor = db.col.find().sort({key:1}).skip(N).limit(M) // 按key属性排序,跳过N条,取M条 31 myCursor.size() // 表示执行过skip()和limit()方法,返回给Cursor的文档数