$pull (Remover Elementos Correspondentes)

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

$pull (Remover Elementos Correspondentes)

$pull remove de um array todos os elementos que são iguais a um valor ou satisfazem uma condição. `{ $pull: { tags: 'spam' } }` remove todo 'spam'; `{ $pull: { scores: { $lt: 60 } } }` remove toda pontuação abaixo de 60. Ele remove todas as correspondências, não apenas uma — a ferramenta padrão para limpar arrays.

CategoriaAtualização de Array
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $pull: { <campo de array>: <valor> | <condição> } }

⚙️ Parâmetros

campo de arrayO campo de matriz a limpar.
valor ou condiçãoUm valor de igualdade ou condição de consulta, por exemplo 'spam' ou { $lt: 60 }.

Retorno:O resultado da atualização

▶ Exemplo

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

// $pull: remove todas as tags spam
db.articles.updateOne(
  { _id: 1 },
  { $pull: { tags: 'spam' } }
)

// Remove pontuações abaixo de 60
db.students.updateOne(
  { _id: 1 },
  { $pull: { scores: { $lt: 60 } } }
)

Saída:

// Todas as tags spam e todas as pontuações abaixo de 60 são removidas

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QQual é a diferença entre $pull e $pop?
A$pull remove por valor ou condição em qualquer lugar; $pop remove apenas o primeiro ou o último.
Q$pull pode remover por condição?
ASim, condições suportam operadores de consulta, ex.: { $pull: { scores: { $lt: 60 } } }.
Q$pull remove todas as correspondências ou apenas uma?
ATodos os elementos correspondentes são removidos.
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%