MongoDB 游标

db.collection.find() 函数用于搜索集合中的文档时,结果返回一个指向返回文档集合的指针,称为游标。

默认情况下,返回查询结果时将自动迭代游标。但是也可以一个接一个地明确地检查游标中返回的项目。如果你看到下面的示例,如果我们的集合中有 3 个文档,则光标将指向第一个文档,然后遍历集合的所有文档。

{
	"Employeeid" : 1, 
	"EmployeeName" :'"Smith"
}
{
    "Employeeid" : 2,
    "EmployeeName" : ' "Mohan"
}
{
	"Employeeid" : 3, 
	"EmployeeName" : '"Joe"
}

以下示例显示了如何完成此操作。

var myEmployee = db.Employee.find( { Employeeid : { $gt:2 }});
    
while(myEmployee.hasNext())    
{
	print(tojson(myEmployee.next()));    
}

代码说明:

  1. 首先,我们获取查询的结果集,该查询找到 ID 大于 2 的 Employee,并将其分配给 JavaScript 变量 myEmployee
  2. 接下来,我们使用 while 循环遍历作为查询的一部分返回的所有文档。
  3. 最后,对于每个文档,我们以 JSON 可读格式打印该文档的详细信息。

如果命令执行成功,将显示以下输出

输出:

> var myEmployee = db.Employee.find( { Employeeid : { $gt:2 }});
> while(myEmployee.hasNext()){ print(tojson(myEmployee.next()));}
{
	"_id" : ObjectId("563479df8a8a4246bd27d786"), 
	"Employeeid" : 3, 
	"EmployeeName" : '"Joe"
}