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 a contar o número de documentos em suas coleções MongoDB . O driver Node.js oferece dois métodos para contar documentos em uma collection:

  • collection.countDocuments() Retorna o número de documentos na coleção que correspondem à query especificada. Se você especificar um documento de consulta vazio, o countDocuments() retornará o número total de documentos na coleção.

  • coleção.estimatedDocumentCount() retorna uma estimativa do número de documentos na coleção com base nos metadados da coleção.

estimatedDocumentCount() é mais rápido do que countDocuments() porque a estimativa utiliza os metadados da coleção em vez de analisar a coleção. Em contraste, o countDocuments() leva mais tempo para retornar, mas fornece uma contagem precisa do número de documentos e suporta a especificação de um filtro. Escolha o método apropriado para sua carga de trabalho.

Para especificar quais documentos você deseja contar, o countDocuments() aceita um parâmetro de query. countDocuments() conta os documentos que correspondem à query especificada.

countDocuments() e o estimatedDocumentCount() suporta configurações opcionais que afetam a execução do método. Consulte a documentação de referência para cada método para obter mais informações.

Dica

You can improve performance when using countDocuments() to return the total number of documents in a collection by avoiding a collection scan. To do this, use a hint to take advantage of the built-in index on the _id field. Use this technique only when calling countDocuments() with an empty query parameter.

collection.countDocuments({}).hint("_id");

Observação

Exemplo de configuração

This example connects to an instance of MongoDB by using a connection URI. To learn more about connecting to your MongoDB instance, see the Connect to MongoDB guide. This example also uses the movies collection in the sample_mflix database included in the Atlas sample datasets. You can load them into your database on a free cluster in MongoDB Atlas following the MongoDB Get Started.

Observação

Nenhum recurso específico do Typescript

O seguinte exemplo de código utiliza JavaScript. Não existem características específicas do Typescript do condutor relevantes para este caso de utilização.

O exemplo a seguir estima o número de documentos na collection movies no banco de dados sample_mflix e, em seguida, retorna uma contagem precisa do número de documentos na collection movies com Canada no campo countries :

1// Count documents in a collection
2
3import { MongoClient } from "mongodb";
4
5// Replace the uri string with your MongoDB deployment's connection string
6const uri = "<connection string uri>";
7
8const client = new MongoClient(uri);
9
10async function run() {
11 try {
12 const database = client.db("sample_mflix");
13 const movies = database.collection("movies");
14
15 /* Print the estimate of the number of documents in the
16 "movies" collection */
17 const estimate = await movies.estimatedDocumentCount();
18 console.log(`Estimated number of documents in the movies collection: ${estimate}`);
19
20 /* Print the number of documents in the "movies" collection that
21 match the specified query */
22 const query = { countries: "Canada" };
23 const countCanada = await movies.countDocuments(query);
24 console.log(`Number of movies from Canada: ${countCanada}`);
25 } finally {
26 // Close the connection after the operations complete
27 await client.close();
28 }
29}
30// Run the program and print any thrown exceptions
31run().catch(console.dir);

A execução do código de amostra anterior resulta na seguinte saída:

Estimated number of documents in the movies collection: 23541
Number of movies from Canada: 1349

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