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

MongoDB:come aggiornare più documenti con un unico comando?

L'aggiornamento multiplo è stato aggiunto di recente, quindi è disponibile solo nelle versioni di sviluppo (1.1.3). Dalla shell esegui un multi aggiornamento passando true come quarto argomento per update() , dove il terzo argomento è l'argomento upsert:

db.test.update({foo: "bar"}, {$set: {test: "success!"}}, false, true);

Per le versioni di mongodb 2.2+ è necessario impostare l'opzione multi true per aggiornare più documenti contemporaneamente.

db.test.update({foo: "bar"}, {$set: {test: "success!"}}, {multi: true})

Per le versioni di mongodb 3.2+ puoi anche utilizzare il nuovo metodo updateMany() per aggiornare più documenti contemporaneamente, senza la necessità di multi separati opzione.

db.test.updateMany({foo: "bar"}, {$set: {test: "success!"}})