Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Contabilizar documentos

En esta guía, puede aprender cómo recuperar un recuento preciso y estimado de la cantidad de documentos en una colección.

Usa el count_documents() método para contar la cantidad de documentos que hay en una colección. Para contar el número de documentos que coinciden con un criterio de búsqueda específico, pasar un diccionario que incluya un filtro de query al método count_documents().

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

Para devolver un recuento de todos los documentos de la colección, pase un diccionario vacío al método count_documents(), como se muestra en el siguiente ejemplo. Seleccione el Synchronous o la pestaña Asynchronous para ver el código correspondiente:

collection.count_documents({})
await collection.count_documents({})

Para devolver un recuento de documentos que coincidan con criterios de búsqueda específicos, especifica tu query en el método count_documents(), como se muestra en el siguiente ejemplo. Selecciona la pestaña Synchronous o Asynchronous para ver el código correspondiente:

collection.count_documents({ "author": "Mike" })
await collection.count_documents({ "author": "Mike" })

El método count_documents() acepta parámetros opcionales que representan las opciones que puedes utilizar para configurar la operación de conteo. Si no se especifican opciones, el controlador no personaliza la operación de recuento.

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

Propiedad
Descripción

comment

A comment to attach to the operation.

session

An instance of ClientSession.

skip

The number of documents to skip before returning results.

limit

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

maxTimeMS

The maximum amount of time to allow the operation to run, in milliseconds.

collation

An instance of Collation.

hint

Gets or sets the index to scan for documents.

Puede obtener una estimación del número de documentos de una colección llamando al método estimated_document_count(). Este método calcula la cantidad de documentos basándose en los metadatos de la colección, lo que podría ser más rápido que realizar un recuento preciso.

El siguiente ejemplo estima la cantidad de documentos en una colección. Seleccione la pestaña Synchronous o Asynchronous para ver el código correspondiente:

collection.estimated_document_count()
await collection.estimated_document_count()

El método estimated_document_count() acepta parámetros opcionales que representan las opciones que puedes utilizar para configurar la operación de conteo. Si no se especifican opciones, el controlador no personaliza la operación de recuento.

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

Propiedad
Descripción

comment

A comment to attach to the operation.

maxTimeMS

The maximum amount of time to allow the operation to run, in milliseconds.

PyMongo ya no soporta el método count(). En su lugar, utilice el método count_documents() de la clase Collection.

Importante

El método count_documents() pertenece a la clase Collection. Si intentas llamar a Cursor.count_documents(), PyMongo genera el siguiente error:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'Cursor' object has no attribute 'count'

Para aprender más sobre cualquiera de los métodos o tipos analizados en esta guía, consulta la siguiente documentación de API:

  • contar_documentos()

  • recuento_estimado_de_documentos()

  • Intercalación

  • ClientSession

Volver

Especifique los campos a devolver

En esta página