sql >> Base de Datos >  >> NoSQL >> MongoDB

Actualización de MongoDB. Tratando de establecer un campo de una propiedad de otro

Prueba el siguiente código:

db.collection.find(your_querry).forEach(function(doc) {
  doc.field1 = doc.field2.length;
  db.collection.save(doc);
});

Puedes usar your_querry para seleccionar solo una parte de la colección original, realice una actualización. Si desea procesar una colección completa, use your_querry = {} .

Si desea que todas las operaciones sean atómicas, use update en lugar de save :

db.collection.find( your_querry, { field2: 1 } ).forEach(function(doc) {
  db.collection.update({ _id: doc._id },{ $set: { field1: doc.field2.length } } );
});