$[] অপারেটর ব্যবহার করে অ্যারেতে সব এলিমেন্ট একসাথে আপডেট
MongoDB 3.6+ এ $[] (অল পজিশনাল অপারেটর) ব্যবহার করে অ্যারেতে সব এলিমেন্ট একসাথে আপডেট করা যায়। এটি নির্দিষ্ট শর্ত ছাড়াই অ্যারেতে সব এলিমেন্ট মডিফাই করে।
নমুনা সংগ্রহ তৈরি
> db.demo385.insertOne({"ServerLogs": [
{ "status":"InActive" },
{ "status":"InActive" },
{ "status":"InActive" }
] });
{ "acknowledged" : true, "insertedId" : ObjectId("5e5b6a7522064be7ab44e7f5") }
ডকুমেন্ট দেখানো
> db.demo385.find().pretty();
আউটপুট:
ServerLogs অ্যারেতে সব status "Active" করা
> db.demo385.update( { "_id" : ObjectId("5e5b6a7522064be7ab44e7f5") }, { "$set": { "ServerLogs.$[].status": "Active" } } ) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })আপডেটের পর:
ব্যাখ্যা: $[] দিয়ে ServerLogs অ্যারেতে সব এলিমেন্টের status ফিল্ড "Active" করা হয়েছে। $[] ফিল্টার ছাড়াই সব এলিমেন্টে অ্যাপ্লাই করে। শর্তসাপেক্ষ আপডেটের জন্য $[
] ব্যবহার করা হয়।