কম্পিউটার টিউটোরিয়াল

MongoDB-এ অ্যারে থেকে এলিমেন্ট মুছে ফেলা ($pull অপারেটর)

MongoDB-এ একটি ডকুমেন্টের ভেতরের অ্যারে থেকে নির্দিষ্ট এলিমেন্ট মুছে ফেলার জন্য $pull অপারেটর ব্যবহার করা হয়। $pull অপারেটর একটি অ্যারে থেকে নির্দিষ্ট শর্ত পূরণ করা সব ইনস্ট্যান্স মুছে দেয়।

উদাহরণ: কালেকশন ও ডেটা তৈরি

db.demo541.insertOne({"software":{"services":["gmail","facebook","yahoo"]}});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8ca845ef4dcbee04fbbc11") }
> db.demo541.insertOne({"software":{"services":["whatsapp","twitter"]}});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8ca85cef4dcbee04fbbc12") }

সব ডকুমেন্ট দেখানো

> db.demo541.find();

আউটপুট:

{ "_id" : ObjectId("5e8ca845ef4dcbee04fbbc11"), "software" : { "services" : [ "gmail", "facebook", "yahoo" ] } }
{ "_id" : ObjectId("5e8ca85cef4dcbee04fbbc12"), "software" : { "services" : [ "whatsapp", "twitter" ] } }

অ্যারে থেকে "yahoo" মুছে ফেলা

প্রথম ডকুমেন্টে (যার _id হল ObjectId("5e8ca845ef4dcbee04fbbc11")) software.services অ্যারেতে থেকে "yahoo" মুছে ফেলার কোয়েরি:

> db.demo541.update(
    { _id: ObjectId("5e8ca845ef4dcbee04fbbc11") },
    { $pull: { 'software.services': "yahoo" } }
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

আপডেটের পর ডকুমেন্টগুলো দেখানো

> db.demo541.find();

আউটপুট:

{ "_id" : ObjectId("5e8ca845ef4dcbee04fbbc11"), "software" : { "services" : [ "gmail", "facebook" ] } }
{ "_id" : ObjectId("5e8ca85cef4dcbee04fbbc12"), "software" : { "services" : [ "whatsapp", "twitter" ] } }

মূল পয়েন্টসমূহ

  • $pull অপারেটর শর্তানুযায়ী সব মিলে যাওয়া এলিমেন্ট মুছে দেয় (শুধু প্রথমটি নয়)।
  • নেস্টেড (nested) অ্যারে এক্সেস করতে ডট নোটেশন (dot notation) ব্যবহার করা হয়: 'software.services'।
  • update() মেথডে প্রথম আর্গুমেন্ট হল ফিল্টার (কোন ডকুমেন্ট আপডেট হবে), দ্বিতীয় আর্গুমেন্ট হল আপডেট অপারেশন।
  • আধুনিক MongoDB-এ updateOne() বা updateMany() ব্যবহার করা উচিত।
  1. সুইফট অ্যারে (Array) থেকে স্পেসিফিক এলিমেন্ট রিমুভ (Remove) করার পদ্ধতি

  2. MongoDB-তে অ্যারে পুশ করার পদ্ধতি

  3. MongoDB-এ অ্যারেতে এলিমেন্ট যুক্ত করার পদ্ধতি

  4. C# অ্যারে থেকে এলিমেন্ট ডিলিট/রিমুভ কীভাবে করবেন?