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

$min (Operador do Acumulador)

$min

Retorna o valor mínimo em um grupo de documentos.

O acumulador $min está disponível nos seguintes estágios:

Observação

Desambiguação

Esta página descreve $min quando usado como acumulador. Os acumuladores retornam um valor agregado como soma, máximo ou mínimo em um grupo de documentos de entrada.

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

{ $min: <expression> }

Quando $min compara valores de tipos diferentes, ele usa a ordem de comparação BSON para determinar qual valor é menor.

Se alguns documentos tiverem um valor null para o campo ou estiverem faltando o campo, $min os ignorará. Considera apenas os valores não nulos e não ausentes.

Se todos os documentos tiverem um valor null para o campo ou não tiverem o campo, $min retornará null.

No estágio $group, se a expressão se resolve em uma array, $min não atravessa a array. Ele compara a array como um todo.

Se vários valores forem comparados como iguais, $min poderá retornar qualquer um desses valores. Não há garantias de qual valor igual $min retorna.

Por exemplo, em um agrupamento que não diferencia maiúsculas de minúsculas, "a" e "A" podem ser comparados como iguais. Não há garantias de qual será retornado.

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.

O exemplo a seguir agrupa filmes por classificação da MPAA e retorna a classificação mais baixa do IMDb para cada grupo.

db.movies.aggregate( [
{
$match: {
rated: { $in: [ "G", "PG", "PG-13", "R" ] },
"imdb.rating": { $type: "double" }
}
},
{
$group: {
_id: "$rated",
lowestRating: { $min: "$imdb.rating" }
}
},
{
$sort: { _id: 1 }
}
] )

O pipeline anterior:

  • Usa $match para filtrar filmes com um valor rated de G, PG, PG-13 ou R e uma classificação numérica do IMDb.

  • Utiliza $group para agrupar filmes pelo campo rated e calcula lowestRating utilizando $min em imdb.rating.

  • Utiliza $sort para devolver os resultados em ordem alfabética por classificação de conteúdo.