Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Contagem de documentos

Neste guia, você pode aprender como usar o driver Ruby para recuperar uma contagem precisa e estimada do número de documentos em uma coleção. Os métodos a seguir contam documentos em uma collection:

  • count_documents: retorna o número exato de documentos que correspondem a um filtro de query ou que existem em uma coleção

  • estimated_document_count: retorna o número estimado de documentos que existem em uma coleção

Os exemplos neste guia usam a collection companies no banco de dados sample_training dos conjuntos de dados de amostra do Atlas. Para acessar essa coleção a partir do seu aplicação Ruby, crie um objeto Mongo::Client que se conecte a um Atlas cluster e atribua os seguintes valores às suas variáveis database e collection:

database = client.use('sample_training')
collection = database['companies']

Para aprender a criar um cluster MongoDB Atlas gratuito e carregar os conjuntos de dados de amostra, consulte o Guia de Introdução do MongoDB.

Use o método count_documents para contar o número de documentos em uma coleção. Para contar o número de documentos que correspondem a critérios de pesquisa específicos, passe um filtro de query para o método count_documents .

Dica

Para saber mais sobre como especificar uma query, consulte o guia Especificar uma Consulta .

Para retornar uma contagem de todos os documentos na collection, chame o método count_documents sem passar um filtro de query, conforme mostrado no exemplo a seguir :

result = collection.count_documents
puts "Number of documents: #{result}"
Number of documents: 9500

Para retornar uma contagem de documentos que correspondam a critérios de pesquisa específicos, passe um filtro de query para o método count_documents .

O exemplo a seguir conta o número de documentos em que o valor do campo founded_year é 2010:

result = collection.count_documents(founded_year: 2010)
puts "Number of companies founded in 2010: #{result}"
Number of companies founded in 2010: 33

Você pode modificar o comportamento do método count_documents passando um segundo parâmetro que especifica os valores das opções. A tabela a seguir descreve as opções que você pode definir para personalizar a operação de contagem:

Opção
Descrição

collation

O agrupamento a ser usado para a operação.
Tipo: Hash

hint

O índice a ser usado para a operação.
Tipo: Hash

comment

O comentário a ser anexado à operação.
Tipo: Object

limit

O número máximo de documentos para contar. Esse valor deve ser um número inteiro positivo.
Tipo: Integer

max_time_ms

A quantidade máxima de tempo em milissegundos que a operação pode ser executada.
Tipo: Integer

skip

O número de documentos a serem ignorados antes de contar os documentos.
Tipo: Integer

read

A preferência de leitura a ser usada na operação. Para saber mais, consulte Preferência de leitura no manual do MongoDB Server.
Tipo: Hash

O exemplo a seguir usa o método count_documents para contar o número de documentos nos quais o campo number_of_employees tem o valor 50 e instrui a operação a contar um máximo de 100 resultados:

result = collection.count_documents({ number_of_employees: 50 }, limit: 100)
puts "Number of companies with 50 employees: #{result}"
Number of companies with 50 employees: 100

Importante

Ao passar um parâmetro de opções para o método count_documents, você deve colocar o filtro de query entre colchetes ({}).

Você pode recuperar 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:

result = collection.estimated_document_count
puts "Estimated number of documents: #{result}"
Estimated number of documents: 9500

Você pode modificar o comportamento do método estimated_document_count passando um parâmetro que especifica valores de opção. A tabela a seguir descreve as opções que você pode definir para personalizar a operação:

Opção
Descrição

comment

O comentário a ser anexado à operação.
Tipo: Object

max_time_ms

A quantidade máxima de tempo em milissegundos que a operação pode ser executada.
Tipo: Integer

read

A read concern a ser usada para a operação. Para saber mais, consulte Read Concern no manual do MongoDB Server.
Tipo: Hash

O exemplo a seguir utiliza o método estimated_document_count para retornar uma estimativa do número de documentos na coleção e define um tempo limite de 1000 milissegundos na operação:

result = collection.estimated_document_count(max_time_ms: 1000)
puts "Estimated number of documents: #{result}"
Estimated number of documents: 9500

Para saber mais sobre qualquer um dos métodos discutidos nesta guia, consulte a seguinte documentação da API: