Actualizar
Cambia campos de uno o varios documentos con los operadores de actualización.
Cambia campos de uno o varios documentos con updateOne, updateMany o replaceOne. Los operadores de actualización y las actualizaciones con pipeline son los de MongoDB.
Requisitos
- Una conexión con un usuario que tenga
readWritesobre la base.
Cambiar campos
JavaScript
db.pedidos.updateOne({ cliente: "Luis Gil" }, { $set: { estado: "pagado" }, $inc: { intentos: 1 } });Cambiar varios documentos
JavaScript
db.pedidos.updateMany({ estado: "pendiente" }, { $set: { avisado: true } });Insertar si no existe
JavaScript
db.contadores.updateOne({ _id: "visitas" }, { $inc: { valor: 1 } }, { upsert: true });Comprobar
La respuesta trae matchedCount y modifiedCount. Con upsert, también trae upsertedId cuando la actualización
insertó un documento nuevo.
Problemas frecuentes
- La actualización falla con
ConflictingUpdateOperators(40) porque dos operadores tocan la misma ruta. - Un contador que actualizan muchos clientes a la vez concentra la carga en el rango de ese documento.