MongoDB-এ update() এর multi:true অপশন দিয়ে একাধিক ডকুমেন্ট আপডেট
পুরনো MongoDB শেলে update()-এর তৃতীয় আর্গুমেন্টে {multi:true} দিলে কোয়ারি মিলা সকল ডকুমেন্ট আপডেট হয়। ডিফল্টভাবে multi:false (শুধু প্রথমটি)। আধুনিক ভার্সনে updateMany() ব্যবহার করুন।
উদাহরণ: ডেটা ইনসার্ট
> db.demo312.insertOne({"FirstName":"Robert"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e50ce16f8647eb59e56204a") }
> db.demo312.insertOne({"FirstName":"Bob"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e50ce19f8647eb59e56204b") }
> db.demo312.insertOne({"FirstName":"Robert"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e50ce1cf8647eb59e56204c") }
> db.demo312.insertOne({"FirstName":"David"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e50ce20f8647eb59e56204d") }
> db.demo312.insertOne({"FirstName":"Robert"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e50ce22f8647eb59e56204e") }
সব ডকুমেন্ট দেখানো
> db.demo312.find();
আউটপুট:
{ "_id" : ObjectId("5e50ce16f8647eb59e56204a"), "FirstName" : "Robert" }
{ "_id" : ObjectId("5e50ce19f8647eb59e56204b"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e50ce1cf8647eb59e56204c"), "FirstName" : "Robert" }
{ "_id" : ObjectId("5e50ce20f8647eb59e56204d"), "FirstName" : "David" }
{ "_id" : ObjectId("5e50ce22f8647eb59e56204e"), "FirstName" : "Robert" }
multi:true দিয়ে আপডেট (সব "Robert" → "Sam")
> db.demo312.update({"FirstName":"Robert"},{$set:{"FirstName":"Sam"}},{multi:true});
WriteResult({ "nMatched" : 3, "nUpserted" : 0, "nModified" : 3 })
আপডেট পর পরিদর্শন
> db.demo312.find();
আউটপুট:
{ "_id" : ObjectId("5e50ce16f8647eb59e56204a"), "FirstName" : "Sam" }
{ "_id" : ObjectId("5e50ce19f8647eb59e56204b"), "FirstName" : "Bob" }
{ "_id" : ObjectId("5e50ce1cf8647eb59e56204c"), "FirstName" : "Sam" }
{ "_id" : ObjectId("5e50ce20f8647eb59e56204d"), "FirstName" : "David" }
{ "_id" : ObjectId("5e50ce22f8647eb59e56204e"), "FirstName" : "Sam" }
ব্যাখ্যা
{multi:true}— কোয়ারি মিলা সকল ডকুমেন্ট আপডেট করে।nMatched:3, nModified:3— তিনটি মিলে, তিনটি আপডেট হলো।- সতর্কতা:
update()ডিপ্রিকেটেড। বর্তমান ড্রাইভার/শেলেupdateMany({"FirstName":"Robert"}, {$set:{"FirstName":"Sam"}})ব্যবহার করুন।