$size
Nesta página
$size
O operador
$size
corresponde a qualquer array com o número de elementos especificado pelo argumento.
Compatibilidade
Você pode utilizar o $size
para implantações hospedadas nos seguintes ambientes:
MongoDB Atlas: o serviço totalmente gerenciado para implantações do MongoDB na nuvem
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Considere os seguintes exemplos:
db.collection.find( { field: { $size: 2 } } );
Esta query retorna todos os documentos em collection
onde field
é uma array com 2 elementos. Por exemplo, a expressão acima retornará { field: [ red, green ] }
e { field: [ apple,
lime ] }
, mas não { field: fruit }
ou { field: [
orange, lemon, grapefruit ] }
. Para fazer a correspondência de campos com apenas um elemento de uma array, use $size
com um valor de 1, conforme descrito a seguir:
db.collection.find( { field: { $size: 1 } } );
$size
não aceita faixas de valores. Para selecionar documentos com base em campos com diferentes números de elementos, crie um campo de contador que você incrementa ao adicionar elementos a um campo.
As consultas não podem usar índices para a parte $size
de uma consulta, embora as outras partes de uma consulta possam usar índices, se aplicável.
Exemplos adicionais
Para obter exemplos adicionais sobre como consultar arrays, consulte:
Para obter exemplos adicionais sobre queries, consulte Fazer query em documentos