Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

อัปเดตทุกเอกสารใน MongoDB ด้วย updateMany

ใช้ updateMany() สำหรับอัปเดตหลายเอกสาร

เมธอด updateMany(filter, update) อัปเดตทุกเอกสารที่ตรงเงื่อนไข (filter ว่าง {} = ทุกเอกสาร)

ตัวอย่าง

สร้างคอลเลกชัน updateManyDocumentsDemo:

> db.updateManyDocumentsDemo.insertOne({"StudentName":"John","StudentLastName":"Smith"});
> db.updateManyDocumentsDemo.insertOne({"StudentName":"John","StudentLastName":"Doe"});
> db.updateManyDocumentsDemo.insertOne({"StudentName":"Carol","StudentLastName":"Taylor"});
> db.updateManyDocumentsDemo.insertOne({"StudentName":"David","StudentLastName":"Miller"});

เปลี่ยนชื่อฟิลด์ StudentName -> StudentFirstName (ทุกเอกสาร)

> db.updateManyDocumentsDemo.updateMany({}, {$rename: {'StudentName': "StudentFirstName"}});

ผลลัพธ์:

{ "acknowledged" : true, "matchedCount" : 4, "modifiedCount" : 4 }

ตรวจสอบหลังอัปเดต

> db.updateManyDocumentsDemo.find().pretty();

ผลลัพธ์:

{ "_id" : ObjectId("..."), "StudentLastName" : "Smith", "StudentFirstName" : "John" }
{ "_id" : ObjectId("..."), "StudentLastName" : "Doe", "StudentFirstName" : "John" }
{ "_id" : ObjectId("..."), "StudentLastName" : "Taylor", "StudentFirstName" : "Carol" }
{ "_id" : ObjectId("..."), "StudentLastName" : "Miller", "StudentFirstName" : "David" }

ใช้ $set, $inc, $unset ได้เช่นกันใน updateMany