Artículos
MongoDB

Cursor forEach en MongoDB

08/Nov/2013

Ya hemos visto como recorrer un cursor en MongoDB. Si bien tenemos un cursor forEach en MongoDB que nos permite recorrer los documentos de una consulta de una forma sencilla y sin tener que realizar un bucle.

La sintaxis de un cursor forEach en MongoDB es la siguiente:

db.coleccion.find(filtro).forEach(funcion)

El filtro corresponde con un documento JSON que filtre la consulta realizada por el método find. Luego, el método forEach recibe como parámetro una función que debe de tener como parámetro un documento. Es decir, cada vez que tengamos un documento a procesar de la consulta se ejecutará la función indicada dentro de forEach.

Pero lo primero que haremos en nuestro ejemplo será conectarnos a la base de datos MongoDB:

conn = new Mongo();
db = conn.getDB("demografia");

Luego definiremos la función que tratará cada uno de los documentos, recordemos que esta función debe tener como parámetro un documento.

function cursor(doc) {
  print("En " + doc.ciudad + " hay " + doc.habitantes + " habitantes.");
}

Vemos que accedemos a los campos del documento. En este caso utilizamos documentos de la colección ciudades, la cual tiene campos ciudad y habitantes.

{
	"_id" : ObjectId("525ab02733b01a66a9dcbc5c"),
	"ciudad" : "Barcelona",
	"habitantes" : 1620943
}
{
	"_id" : ObjectId("525ab02733b01a66a9dcbc5d"),
	"ciudad" : "Valencia",
	"habitantes" : 797028
}
{
	"_id" : ObjectId("525ab02733b01a66a9dcbc5e"),
	"ciudad" : "Sevilla",
	"habitantes" : 702355
}
{
	"_id" : ObjectId("525ab02733b01a66a9dcbc5f"),
	"ciudad" : "Zaragoza",
	"habitantes" : 679624
}

Ahora indicaremos la función en el parámetro forEach:

db.ciudades.find().forEach(cursor);

Si queremos nos podemos evitar la definición de la función y definir la función anónima directamente sobre el método forEach. En este caso lo haremos de la siguiente forma:

db.ciudades.find().forEach( function(doc) {
	print("En " + doc.ciudad + " hay " + doc.habitantes + " habitantes.");
} );

Código Fuente

Descárgate el código fuente de Cursor forEach en MongoDB
Y si te ha gustado nuestro código fuente puedes regalarnos una estrella Star

Vídeos sobre MongoDB

Disfruta también de nuestros artículos sobre MongoDB en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test MongoDB

¿Te atreves a probar tus habilidades y conocimiento en MongoDB con nuestro test?

Test MongoDB
Suscribir
Notificar de
guest
1 Comentario
Recientes
Anteriores Más votados
Opiniones integradas
Ver todos los comentarios