$size (Tamanho de Array)

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

$size (Tamanho de Array)

$size corresponde a documentos onde um campo de array tem exatamente o tamanho fornecido. `{ tags: { $size: 3 } }` corresponde a documentos com exatamente 3 tags. Em consultas, $size aceita apenas um valor exato — você não pode escrever { $size: { $gt: 3 } }; para condições de intervalo use $expr com o $size de agregação.

CategoriaArray
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ <campo>: { $size: <tamanho> } }

⚙️ Parâmetros

campoO campo de matriz a corresponder.
comprimentoO número exato de elementos da matriz.

Retorno:Cursor dos documentos correspondentes

▶ Exemplo

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

// $size: artigos com exatamente 3 tags
db.articles.find({ tags: { $size: 3 } })

// Pelo menos 3 tags (exige $expr)
db.articles.find({ $expr: { $gte: [{ $size: '$tags' }, 3] } })

Saída:

// Retorna artigos com exatamente 3 tags; a segunda consulta retorna pelo menos 3

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

Q$size pode consultar tamanho maior que um valor?
ANão diretamente. Use $expr: { $gt: [{ $size: '$tags' }, 3] }.
Q$size corresponde a documentos com o campo ausente?
ANão, o campo deve existir e ser um array.
Q$size: 0 pode corresponder a arrays vazios?
ASim, { tags: { $size: 0 } } corresponde a arrays vazios; campos ausentes ainda assim não correspondem.
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%