Какво представлява курсорът в MongoDB?
Когато функцията db.collection.find () се използва за търсене на документи в колекцията, резултатът връща указател към колекцията от върнати документи, който се нарича курсор.
По подразбиране курсорът ще се повтори автоматично, когато се върне резултатът от заявката. Но също така може изрично да се разглеждат елементите, върнати в курсора, един по един. Ако видите примера по-долу, ако в нашата колекция има 3 документа, обектът на курсора ще сочи към първия документ и след това ще извърши итерация през всички документи от колекцията.
Следващият пример показва как това може да се направи.
var myEmployee = db.Employee.find( { Employeeid : { $gt:2 }});while(myEmployee.hasNext()){print(tojson(myEmployee.next()));}
Обяснение на кода:
- Първо вземаме резултата от заявката, която намира служителя, чийто идентификатор е по-голям от 2, и го присвояваме на променливата на JavaScript „myEfficiee“
- След това използваме цикъла while, за да прегледаме всички документи, които се връщат като част от заявката.
- И накрая за всеки документ, ние отпечатваме подробностите за този документ в JSON четим формат.
Ако командата се изпълни успешно, ще се покаже следният изход
Изход: