Total de registros con MongoDB count

05/Feb/2014 MongoDB , 1 Comentario

Cuando realizamos consultas en MongoDB una de las cosas que querremos saber es el número total de registros de una colección o el número total de registros afectados por una consulta. Para ello tenemos el método MongoDB count.

El método MongoDB count se puede aplicar directamente sobre una colección o sobre una consulta y nos devolverá dicha información.

La ejecución del método MongoDB count devuelve un número con el número de documentos contados.

La sintaxis sobre una colección es la siguiente:

  1. db.coleccion.count();

De esta manera, en nuestra colección de ejemplo de ciudades, escribiríamos lo siguiente:

  1. db.ciudades.count();

Esto devolvería el número total de documentos que componen una colección. Que al fin y al cabo podría escribirse también como:

  1. db.ciudades.find().count();

Es decir, contar una consulta que recupera todos los documentos. Y es que esta es la base para contar registros parciales de consultas con MongoDB count. La sintaxis será:

  1. db.coleccion.find({filtros}).count();

En este sentido, si estamos consultando nuestra colección de documentos de ciudades:

{ "_id" : ObjectId("525ab02733b01a66a9dcbc5b"), "ciudad" : "Madrid", "habitantes" : 3233527 }
{ "_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 }

Si consultamos ciudades que empiecen por M y queremos saber cuantas existen, podemos utilizar el método MongoDB count.

  1. db.ciudades.find({ciudad:/^M/}).count();

Como podéis ver el uso del método MongoDB count es muy sencillo. Otra cosa es el coste en tiempo y rendimiento, pero eso ya es cuestión de otro artículo. 😀

Vídeos sobre MongoDB


Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*