MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Operatore posizionale MongoDB $

Sfortunatamente l'aggiornamento di tutti i documenti nell'array non è possibile ora - vedi MongoDB JIRA ticket Utilizza l'operatore posizionale per aggiornare tutti elementi in un array .

Puoi aggiornare ogni documento manualmente:

db.MyDB.find({}).forEach(function(doc) { 
  doc.myArray.forEach(function(item) { 
     if (item.b === true) 
        item.b = false; 
  }); 

  db.MyDB.update({ "_id": doc._id }, { "$set": { "myArray": doc.myArray }});
});