$sort (Ordenar)

Última atualização: 2026-10-09

$sort (Ordenar)

$sort ordena os documentos do pipeline por campos especificados: 1 crescente, -1 decrescente, com ordenação por vários campos suportada. Coloque-o perto do fim, já que estágios intermediários podem reordenar documentos. Para ordenar com um índice, coloque $match primeiro. Ordenações grandes excedem o limite de memória padrão de 100MB e falham a menos que allowDiskUse esteja habilitado.

CategoriaEstágios Principais
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $sort: { <campo1>: <1 ou -1>, <campo2>: <1 ou -1> } }

⚙️ Parâmetros

chave de ordenaçãoNomes de campo mapeados para 1 (crescente) ou -1 (decrescente); vários campos comparam na ordem escrita.

Retorno:Fluxo de documentos ordenado

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $sort: maior pontuação primeiro, nome crescente em empates
db.scores.aggregate([
  { $sort: { score: -1, name: 1 } }
])

Saída:

{ "name": "Alice", "score": 98 }
{ "name": "Bob", "score": 92 }

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QComo $sort lida com vários campos?
AOs campos comparam na ordem escrita: primeiro pelo primeiro campo, depois pelo segundo quando os valores empatam.
Q$sort pode usar um índice?
AQuando a chave de ordenação corresponde a um índice e o estágio é o primeiro ou segue $match, o índice evita uma ordenação em memória.
QE se $sort atingir o limite de memória?
APasse allowDiskUse: true nas opções da agregação para descarregar em disco.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%