updateMany() (Atualizar Vários Documentos)

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

updateMany() (Atualizar Vários Documentos)

updateMany() atualiza todos os documentos que corresponderem a um filtro, ex.: `db.users.updateMany({ age: { $lt: 18 } }, { $set: { isTeen: true } })`. Diferente de updateOne(), que altera apenas a primeira correspondência, ele aplica a atualização a todos os documentos correspondentes — útil para mudanças em lote de status ou adição de campos em todo lugar. O resultado informa matchedCount (correspondências encontradas) e modifiedCount (documentos efetivamente alterados).

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

📝 Sintaxe

db.<collection>.updateMany(<filter>, <update>, { upsert: <bool> })

⚙️ Parâmetros

filtroObjeto de predicado; suporta operadores de consulta.
atualizaçãoObjeto de operadores de atualização aplicado a cada correspondência.
upsertOpcional. Insere um documento quando nada corresponde; o padrão é false.

Retorno:UpdateResult: { acknowledged, matchedCount, modifiedCount, upsertedId }.

▶ Exemplo

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

// updateMany: marca todos com mais de 30 anos como senior
db.users.updateMany(
  { age: { $gt: 30 } },
  { $set: { isSenior: true } }
)

Saída:

{ acknowledged: true, matchedCount: 3, modifiedCount: 3, upsertedId: null }

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QO updateMany atualiza todos os documentos correspondentes?
ASim, todos os documentos correspondentes são atualizados. Passar um filtro vazio {} atualiza a coleção inteira, então tenha cuidado.
QQual é a diferença entre updateMany e updateOne?
AupdateOne() atualiza apenas a primeira correspondência; updateMany() atualiza todas. Escolha updateMany() para mudanças em lote.
QPor que modifiedCount é menor que matchedCount?
AAlguns documentos correspondentes já contêm os valores alvo, então o MongoDB os conta como inalterados e os exclui de modifiedCount.
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%