MongoDB-এ অ্যারে থেকে নির্দিষ্ট শর্ত মэтচ করা এলিমেন্ট (যা একটি ডকুমেন্ট হতে পারে) মুছে ফেলতে $pull অপারেটর ব্যবহার করা হয়।
নমুনা ডেটা তৈরি
> db.pullAnArrayElementDemo.insertOne({
"StudentDetails": [
{"StudentFirstName": "Chris", "StudentScore": 56},
{"StudentFirstName": "Robert", "StudentScore": 59}
]
});
{ "acknowledged": true, "insertedId": ObjectId("5cd3b55bedc6604c74817cd5") }
ডকুমেন্ট দেখুন
> db.pullAnArrayElementDemo.find().pretty();আউটপুট:
{
"_id": ObjectId("5cd3b55bedc6604c74817cd5"),
"StudentDetails": [
{"StudentFirstName": "Chris", "StudentScore": 56},
{"StudentFirstName": "Robert", "StudentScore": 59}
]
}
$pull দিয়ে StudentFirstName = "Chris" থাকা এলিমেন্ট মুছে ফেলা
> db.pullAnArrayElementDemo.update(
{},
{$pull: {'StudentDetails': {'StudentFirstName': 'Chris'}}}
);
WriteResult({ "nMatched": 1, "nUpserted": 0, "nModified": 1 })
আপডেট হওয়া ডকুমেন্ট যাচাই করুন
> db.pullAnArrayElementDemo.find().pretty();আউটপুট (Chris বাদ পড়েছে, শুধু Robert বাকি):
{
"_id": ObjectId("5cd3b55bedc6604c74817cd5"),
"StudentDetails": [
{"StudentFirstName": "Robert", "StudentScore": 59}
]
}
ব্যাখ্যা: $pull অপারেটর অ্যারেতে শর্ত মэтচ করে সব মিলে যাওয়া এলিমেন্ট মুছে ফেলে। খালি কোয়েরি {} দিয়ে কলেকশনের প্রথম ডকুমেন্ট আপডেট করা হয়েছে (multi: true না দিয়ে)।