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"
}