Mi az a kurzor a MongoDB-ben?
Amikor a db.collection.find () függvényt használja a dokumentumok keresésére a gyűjteményben, az eredmény egy mutatót ad vissza a visszaküldött dokumentumok gyűjteményéhez, amelyet kurzornak hívnak.
Alapértelmezés szerint a kurzor automatikusan ismétlődik, amikor a lekérdezés eredményét visszaadja. De a kurzorban visszaküldött tételeket egyenként is végig lehet haladni. Ha az alábbi példát látja, ha 3 dokumentum van a gyűjteményünkben, akkor a kurzorobjektum az első dokumentumra mutat, majd a gyűjtemény összes dokumentumát átforgatja.
A következő példa bemutatja, hogyan lehet ezt megtenni.
var myEmployee = db.Employee.find( { Employeeid : { $gt:2 }});while(myEmployee.hasNext()){print(tojson(myEmployee.next()));}
Kód Magyarázat:
- Először vesszük a lekérdezés eredményhalmazát, amely megkeresi a 2-nél nagyobb azonosítójú munkavállalót, és hozzárendeljük a „myEmployee” JavaScript változóhoz.
- Ezután a while ciklust használjuk a lekérdezés részeként visszaküldött összes dokumentum átdolgozásához.
- Végül minden dokumentumhoz kinyomtatjuk a dokumentum részleteit JSON olvasható formátumban.
A parancs sikeres végrehajtása esetén a következő Output jelenik meg
Kimenet: