$sortByCount (Ordenar por Contagem)

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

$sortByCount (Ordenar por Contagem)

$sortByCount é um atalho para $group mais $sort: ele agrupa pelo valor de uma expressão, conta documentos por grupo e emite { _id: valor, count: N } ordenado por contagem decrescente. Perfeito para frequência de palavras e rankings de categorias. Equivalente a $group com $sum: 1 seguido por $sort na contagem decrescente.

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

📝 Sintaxe

{ $sortByCount: <expressão> }

⚙️ Parâmetros

expressão de agrupamentoExpressão que determina a chave de agrupamento; uma referência de campo ou expressão calculada.

Retorno:Fluxo de documentos { _id, count } ordenado por count decrescente

▶ Exemplo

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

// $sortByCount: conta avaliações por nota
db.reviews.aggregate([
  { $sortByCount: '$rating' }
])

Saída:

{ "_id": 5, "count": 42 }
{ "_id": 4, "count": 31 }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QQual é a diferença entre $sortByCount e $group?
A$sortByCount é um atalho para $group mais $sort, fixo na saída _id/count ordenada por contagem decrescente.
QO resultado pode ser ordenado em ordem crescente?
ANão diretamente; escreva um $group simples mais $sort quando precisar de outra ordem.
QEle pode agrupar por vários campos?
APasse uma expressão de documento referenciando vários campos como chave de grupo.
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%