Kurzor dovnitř MongoDB Tutoriál: Učte se s příklady

⚡ Chytré shrnutí

Kurzor dovnitř MongoDB je ukazatel vrácený funkcí db.collection.find() na výslednou sadu odpovídajících dokumentů. Ve výchozím nastavení iteruje automaticky, ale vývojáři mohou dokumenty procházet jeden po druhém pomocí metod, jako jsou hasNext() a next().

  • 🖱️ Definice kurzoru: Ukazatel na dokumenty vrácené funkcí db.collection.find() v MongoDB.
  • 🔁 Automatická iterace: Ve výchozím nastavení kurzor automaticky iteruje, když je vrácen výsledek dotazu.
  • ???? Ruční iterace: Procházejte dokumenty jeden po druhém pomocí hasNext() a next() ve smyčce while.
  • 📄 Readable Výstup: Pomocí funkce tojson() vytiskněte každý dokument v čitelném formátu JSON.
  • 🔎 Příklad dotazu: Funkce find({Employeeid:{$gt:2}}) vrací zaměstnance s ID větším než 2.

Kurzor dovnitř MongoDB

V čem je kurzor MongoDB?

Když db.collection.find () Funkce slouží k vyhledávání dokumentů ve sbírce, výsledek vrací ukazatel na vrácenou sbírku dokumentů, která se nazývá kurzor.

Ve výchozím nastavení se kurzor po vrácení výsledku dotazu automaticky iteruje. Ale lze také explicitně procházet položky vrácené kurzorem jednu po druhé. Pokud vidíte níže uvedený příklad, máme v kolekci 3 dokumenty, objekt kurzoru bude ukazovat na první dokument a poté bude procházet všemi dokumenty kolekce.

Kurzor dovnitř MongoDB

Následující příklad ukazuje, jak to lze provést.

var myEmployee = db.Employee.find( { Employeeid : { $gt:2 }});

	while(myEmployee.hasNext())

	{

		print(tojson(myEmployee.next()));

	}

Code Vysvětlení

  1. Nejprve vezmeme sadu výsledků dotazu, který najde zaměstnance, jehož id je větší než 2, a přiřadíme jej JavaScénář proměnná 'myEmployee'
  2. Dále použijeme smyčku while k iteraci všemi dokumenty, které jsou vráceny jako součást dotazu.
  3. Nakonec pro každý dokument vytiskneme podrobnosti o tomto dokumentu JSON čitelný formát.

Pokud je příkaz úspěšně proveden, zobrazí se následující výstup

Výstup

Kurzor dovnitř MongoDB

Nejčastější dotazy

Iterujete a MongoDB kurzor pomocí metod jako hasNext() a next() ve smyčce while nebo pomocí forEach(). Ve výchozím nastavení shell automaticky iteruje prvních 20 dokumentů.

A MongoDB Kurzor vrací dokumenty v dávkách. První dávka může pojmout až 101 dokumentů nebo 16 MB a shell automaticky zobrazí prvních 20 výsledků a poté se vyzve k zadání dalších.

Ano. Ve výchozím nastavení MongoDB Kurzor se zablokuje po 10 minutách nečinnosti na serveru. Pro dlouhodobě běžící operace můžete tuto funkci zakázat pomocí volby noCursorTimeout.

Asistenti s umělou inteligencí mohou generovat MongoDB vyhledávat dotazy, vytvářet agregační kanály, vysvětlovat kurzorové metody a převádět požadavky v prostém jazyce do kódu shellu nebo ovladače, helping vývojáři dotazují data rychleji.

Ano. Nástroje umělé inteligence mohou navrhovat indexy, doporučovat projekce pro omezení vracených polí a označovat neefektivní dotazy, např.ping snížit dobu zpracování kurzoru a využití paměti v MongoDB aplikace.

Shrňte tento příspěvek takto: