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.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Menu Docs

$count (função de janela)

$count

Retorna o número de documentos em uma janela específica.

Observação

Desambiguação

Esta página descreve $count quando usado como uma função de janela.

Você também pode usar $count nestes outros contextos:

{
$setWindowFields: {
...
output: {
<field>: {
$count: {},
window: {
documents: [ <lower boundary>, <upper boundary> ]
}
}
}
}
}

$count não aceita parâmetros.

Dica

$count é funcionalmente equivalente ao uso de { $sum: 1 } no estágio $setWindowFields.

Os exemplos nesta página usam dados do conjunto de dados sample_mflix. Para obter detalhes sobre como carregar esse conjunto de dados em sua implantação autogerenciada do MongoDB , consulte Carregar o conjunto de dados de amostra. Se você fez modificações nos bancos de dados de amostra, talvez seja necessário descartar e recriar os bancos de dados para executar os exemplos nesta página.

Este exemplo usa a função de janela $count com uma janela baseada em intervalo para contar quantos filmes de ação de 2000 têm uma classificação IMDb dentro de 0.5 pontos da classificação de cada filme.

db.movies.aggregate( [
{
$match: {
genres: "Action",
year: 2000,
"imdb.rating": { $ne: null }
}
},
{
$setWindowFields: {
sortBy: { "imdb.rating": 1 },
output: {
moviesWithSimilarRating: {
$count: {},
window: {
range: [ -0.5, 0.5 ]
}
}
}
}
},
{
$project: {
_id: 0,
title: 1,
"imdb.rating": 1,
moviesWithSimilarRating: 1
}
},
{ $sort: { "imdb.rating": -1 } },
{ $limit: 10 }
] )

No exemplo anterior:

  • $match filtros para filmes de ação lançados em 2000 que têm um valor de imdb.rating.

  • sortBy: { "imdb.rating": 1 } classifica documentos por classificação do IMDb em ordem crescente. Um sortBy é necessário ao usar uma janela baseada em intervalo.

  • output usa $count para definir o campo moviesWithSimilarRating para o número de filmes cuja classificação do IMDb se enquadra na janela atual.

    A janela usa range: [ -0.5, 0.5 ], que inclui todos os documentos cujo imdb.rating está dentro de 0.5 pontos da classificação do documento atual.

  • $project inclui os campos title, imdb.rating e moviesWithSimilarRating na saída.

  • $sort e $limit retornam os 10 filmes mais bem avaliados em termos de legibilidade.

A saída mostra que Contentador (8.5), com uma classificação relativamente única, tem uma contagem de moviesWithSimilarRating menor do que filmes com classificações mais comuns, como 7.4.

Avalie esta página