Docs Menu
Docs Home
/ /

Contabilizar documentos

En esta guía, puede aprender cómo recuperar recuentos precisos y estimados de la cantidad de documentos en una colección.

Los ejemplos de esta guía utilizan el movies colección en la base de datos sample_mflix de la Conjuntos de datos de ejemplo de Atlas. Para aprender a crear un clúster gratuito de MongoDB Atlas y cargar los conjuntos de datos de ejemplo, consulte la guía de introducción a MongoDB.

Utilice la función mongoc_collection_count_documents() para contar el número de documentos de una colección. Para contar el número de documentos que coinciden con los criterios de búsqueda especificados, pase un filtro de consulta a la función mongoc_collection_count_documents().

Para obtener más información sobre cómo especificar una consulta, consulte Especifique una consulta.

Para devolver un recuento de todos los documentos de la colección, llame a la función mongoc_collection_count_documents() con un filtro de consulta vacío, como se muestra en el siguiente ejemplo:

bson_error_t error;
bson_t *empty_query = bson_new();
int64_t count =
mongoc_collection_count_documents(collection, empty_query, NULL, NULL, NULL, &error);
printf("%" PRId64 "\n", count);
bson_destroy(empty_query);
21349

Para obtener un recuento de documentos que coinciden con criterios de búsqueda específicos, especifique su consulta en la función mongoc_collection_count_documents(). El siguiente ejemplo imprime un recuento de todos los documentos de la colección movies cuyo valor de campo year es 1930:

bson_error_t error;
bson_t *query = BCON_NEW("year", BCON_INT32(1930));
int64_t count =
mongoc_collection_count_documents(collection, query, NULL, NULL, NULL, &error);
printf("%" PRId64 "\n", count);
bson_destroy(query);
10

La función mongoc_collection_count_documents() acepta parámetros opcionales en forma de una estructura bson_t, que representa un conjunto de opciones que se pueden usar para configurar la operación de conteo. Si no se especifica ninguna opción, el controlador no personaliza la operación de conteo.

La siguiente tabla describe las opciones que puedes configurar para personalizar countDocuments():

Opción
Descripción

comment

Specifies a comment to attach to the operation.

skip

Sets the number of documents to skip before returning results.

limit

Sets the maximum number of documents to count. Must be a positive integer.

collation

Specifies the kind of language collation to use when sorting results. For more information, see Collation in the MongoDB Server manual.

hint

Sets the index to scan for documents.

Para obtener una lista completa de opciones, consulta la Documentación de la API de mongoc_collection_count_documents().

El siguiente ejemplo utiliza una estructura bson_t para agregar un comentario a la operación mongoc_collection_count_documents():

bson_error_t error;
bson_t *opts = BCON_NEW("comment", BCON_UTF8("Retrieving count"));
int64_t count =
mongoc_collection_count_documents(collection, bson_new(), opts, NULL, NULL, &error);
printf("%" PRId64 "\n", count);
bson_destroy(opts);
21349

Utiliza la función mongoc_collection_estimated_document_count() para recuperar una estimación del número de documentos en una colección. La función estima la cantidad de documentos basándose en los metadatos de la colección, lo que puede ser más rápido que realizar un recuento exacto.

El siguiente ejemplo imprime el número estimado de documentos en una colección:

bson_error_t error;
int64_t count =
mongoc_collection_estimated_document_count(collection, NULL, NULL, NULL, &error);
printf("%" PRId64 "\n", count);
21349

La función mongoc_collection_estimated_document_count() acepta parámetros opcionales en forma de una estructura bson_t, que representa opciones que se pueden usar para configurar la operación de conteo. Si no se especifica ninguna opción, el controlador no personaliza la operación de conteo.

La siguiente tabla describe las opciones que puedes configurar para personalizar mongoc_collection_estimated_document_count():

Opción
Descripción

comment

Specifies a comment to attach to the operation.

collation

Specifies the kind of language collation to use when sorting results. For more information, see Collation in the MongoDB Server manual.

Para obtener una lista completa de opciones, consulta la Documentación de la API de mongoc_collection_estimated_document_count().

El siguiente ejemplo utiliza una estructura bson_t para agregar un comentario a la operación mongoc_collection_estimated_document_count():

bson_error_t error;
bson_t *opts = BCON_NEW("comment", BCON_UTF8("Retrieving count"));
int64_t count =
mongoc_collection_estimated_document_count(collection, opts, NULL, NULL, &error);
printf("%" PRId64 "\n", count);
bson_destroy(opts);
21349

Para aprender más sobre alguna de las funciones tratadas en esta guía, consulta la siguiente documentación de la API:

Volver

Especifica los documentos a devolver

En esta página