MongoDB-এ $unset ব্যবহার করে ফিল্ড মুছে ফেলা
MongoDB-এ একটি ডকুমেন্ট থেকে নির্দিষ্ট ফিল্ড বা ডেটা মুছে ফেলার জন্য $unset অপারেটর ব্যবহার করা হয়। নিচে ধাপে ধাপে উদাহরণ দেওয়া হলো:
১. কালেকশন ও ডকুমেন্ট তৈরি
> db.demo20.insertOne(
{
"ListOfEmployee" : [
{ "EmployeeName1" : "John" },
{ "EmployeeName2" : "Carol" }
],
"EmployeeName2" : []
}
);
{
"acknowledged" : true,
"insertedId" : ObjectId("5e138c3555d0fc6657d21f12")
}
২. সব ডকুমেন্ট দেখানো
> db.demo20.find();
আউটপুট:
{
"_id" : ObjectId("5e138c3555d0fc6657d21f12"),
"ListOfEmployee" : [
{ "EmployeeName1" : "John" },
{ "EmployeeName2" : "Carol" }
],
"EmployeeName2" : []
}
৩. নির্দিষ্ট ফিল্ড মুছে ফেলা (EmployeeName2)
> db.demo20.update(
{ "EmployeeName2": { "$exists": 1 }},
{ "$unset": { "EmployeeName2": "" } }
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
ব্যাখ্যা: এখানে $exists: 1 দিয়ে চেক করা হয়েছে যে EmployeeName2 ফিল্ডটি আছে কিনা, তারপর $unset দিয়ে সেটি মুছে ফেলা হয়েছে।
৪. আপডেটের পর ডকুমেন্ট যাচাই
> db.demo20.find();
আউটপুট:
{
"_id" : ObjectId("5e138c3555d0fc6657d21f12"),
"ListOfEmployee" : [
{ "EmployeeName1" : "John" },
{ "EmployeeName2" : "Carol" }
]
}
এখন EmployeeName2 ফিল্ডটি ডকুমেন্ট থেকে মুছে গেছে, তবে ListOfEmployee এর ভিতরের ডেটা অপরিবর্তিত রয়েছে।