MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB:Wie aktualisiere ich mehrere Dokumente mit einem einzigen Befehl?

Multi-Update wurde kürzlich hinzugefügt, ist also nur in den Entwicklungsversionen (1.1.3) verfügbar. Von der Shell aus führen Sie ein Multi-Update durch, indem Sie true übergeben als viertes Argument für update() , wobei das dritte Argument das Upsert-Argument ist:

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

Für Versionen von mongodb 2.2+ müssen Sie die Option multi auf true setzen, um mehrere Dokumente gleichzeitig zu aktualisieren.

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

Für Versionen von mongodb 3.2+ können Sie auch die neue Methode updateMany() verwenden um mehrere Dokumente gleichzeitig zu aktualisieren, ohne dass separate multi erforderlich sind Möglichkeit.

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