$bottom (Acumulador de Fundo)
Última atualização: 2026-10-09
$bottom (Acumulador de Fundo)
$bottom é um acumulador que retorna o documento do fim de um grupo conforme uma ordem de ordenação especificada — o documento inteiro — disponível desde o MongoDB 5.2, simétrico a $top. A ordem vem do sortBy de $group, não da sequência de entrada. Uso típico: a menor nota ou o registro mais antigo por grupo.
| Categoria | Acumuladores |
|---|---|
| Versão do MongoDB | 5.2+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
{ $group: { _id: <key>, bottom: { $bottom: { sortBy: { <field>: <1 or -1> }, output: <expression> } } } }
Retorno:Documento de base do grupo conforme a ordem sortBy
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// $bottom: menor preço por item via sortBy
db.sales.aggregate([
{ $group: { _id: '$item', bottom: { $bottom: { sortBy: { price: 1 }, output: '$price' } } } }
])
Saída:
{ "_id": "Pen", "bottom": 20 }
📌 Notas
- Exige MongoDB 5.2 ou posterior
- Simétrico a $top; a semântica depende da direção do sortBy
- Omita output para retornar o documento inteiro
🏷️ Tags Relacionados
💡 Casos Relacionados
Mais casos práticos em breve.
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
QQual é a diferença entre $bottom e $min?
A$min retorna o valor mínimo; $bottom retorna o último documento inteiro ou o resultado da expressão.
QComo obtenho o registro mais antigo?
ACom sortBy crescente por tempo, $bottom pega o mais antigo e $top o mais recente.
QQual versão o $bottom exige?
AMongoDB 5.2 ou posterior.