Actions

Iterate: Difference between revisions

From NoSQLZoo

mNo edit summary
mNo edit summary
Line 3: Line 3:
<div class="q nonum" data-lang="mongo">
<div class="q nonum" data-lang="mongo">
<p class="strong">Iterating countries in South America stored in the 'world' collection.</p>
<p class="strong">Iterating countries in South America stored in the 'world' collection.</p>
<pre class=def>
<pre class="def nonum"><nowiki>
let cursor = db.world.find({continent:"South America"})
let cursor = db.world.find({continent: "South America"});
while (cursor.hasNext()) {
while (cursor.hasNext()) {
   printjson(cursor.next());
   printjson(cursor.next());
}
}</nowiki></pre>
</pre>
</div>
</div>



Revision as of 16:33, 18 July 2018

MongoDB's find() method returns a cursor object which can be iterated using while, hasNext() and next, or by using forEach().

Iterating countries in South America stored in the 'world' collection.

let cursor = db.world.find({continent: "South America"});
while (cursor.hasNext()) {
   printjson(cursor.next());
}
let cursor = db.world.find({continent:"South America"})
cursor.forEach(printjson);

Cursors can also be converted to other JavaScript collection types, such as arrays.
In the following example an array is used to find the nth record in a result as an alternative to .find().skip(n).limit(1)

Find the 3rd result of the previous example.

db.world.find({continent:"South America"}).toArray()[3]
  • You have been served by: dill