Visão geral
Neste guia, você pode aprender a recuperar uma contagem precisa e estimada do número de documentos em uma coleção.
Recuperar uma contagem precisa
Utilize o método count_documents() para contar o número de documentos que estão em uma coleção. Para contar o número de documentos que correspondem a um critério específico do Atlas Search , passe um dicionário que inclua um filtro de query para o método count_documents().
Para saber mais sobre como especificar uma query, consulte Especificar uma query .
Contagem de todos os documentos
Para retornar uma contagem de todos os documentos na collection, passe um dicionário vazio para o método count_documents() , conforme mostrado no exemplo a seguir:
collection.count_documents({})
Contagem de documentos específicos
Para retornar uma contagem de documentos que correspondam a critérios específicos do Atlas Search , especifique sua query no método count_documents(), conforme mostrado no exemplo a seguir:
collection.count_documents({ "author": "Mike" })
Personalizar comportamento de contagem
O método count_documents() aceita parâmetros opcionais, que representam opções que você pode utilizar para configurar a operação de contagem. Se você não especificar nenhuma opção, o driver não personalizará a operação de contagem.
A tabela a seguir descreve as opções que você pode definir para personalizar count_documents():
Propriedade | Descrição |
|---|---|
| A comment to attach to the operation. |
| An instance of ClientSession. |
| The number of documents to skip before returning results. |
| The maximum number of documents to count. Must be a positive integer. |
| The maximum amount of time to allow the operation to run, in
milliseconds. |
| An instance of Collation. |
| Gets or sets the index to scan for documents. |
Recuperar uma contagem estimada
Você pode obter uma estimativa do número de documentos em uma coleção ligando para o método estimated_document_count() . O método estima a quantidade de documentos com base nos metadados da collection, o que pode ser mais rápido do que realizar uma contagem precisa.
O exemplo a seguir estima o número de documentos em uma coleção:
collection.estimated_document_count()
Personalizar comportamento de contagem estimada
O método estimated_document_count() aceita parâmetros opcionais, que representam opções que você pode utilizar para configurar a operação de contagem. Se você não especificar nenhuma opção, o driver não personalizará a operação de contagem.
A tabela a seguir descreve as opções que você pode definir para personalizar estimated_document_count():
Propriedade | Descrição |
|---|---|
| A comment to attach to the operation. |
| The maximum amount of time to allow the operation to run, in
milliseconds. |
Solução de problemas
Aviso de depreciação: a contagem está obsoleta
O PyMongo não suporta mais o método count() . Em vez disso, utilize o count_documents() método da Collection classe .
Importante
O método count_documents() pertence à classe Collection . Se você tentar ligar para Cursor.count_documents(), o PyMongo gerará o seguinte erro:
Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'Cursor' object has no attribute 'count'
Documentação da API
Para saber mais sobre qualquer um dos métodos ou tipos discutidos neste guia, consulte a seguinte documentação da API: