MongoDB-এ অ্যারেতে নতুন উপাদান যোগ করতে $addToSet অপারেটর ব্যবহার করা হয়। এটি ডুপ্লিকেট মান যোগ করে না।
নমুনা ডেটা তৈরি করা
pushElements কালেকশনে একটি ডকুমেন্ট ইনসার্ট করি যাতে Comments নামক একটি স্ট্রিং অ্যারে থাকে।
> db.pushElements.insertOne({"Comments":["Good","Awesome","Nice"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd682597924bb85b3f48953") }
ডকুমেন্ট দেখানো
> db.pushElements.find().pretty();
আউটপুট:
{
"_id" : ObjectId("5cd682597924bb85b3f48953"),
"Comments" : [ "Good", "Awesome", "Nice" ]
}
$addToSet দিয়ে উপাদান যোগ করা
"Cool" যোগ করি। upsert:true দিয়ে ডকুমেন্ট না থাকলে তৈরি হবে।
> db.pushElements.update(
{ _id: ObjectId("5cd682597924bb85b3f48953") },
{ "$addToSet": { "Comments": "Cool" } },
{ upsert: true }
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
ফলাফল দেখানো
>> db.pushElements.find().pretty();
আউটপুট:
{
"_id" : ObjectId("5cd682597924bb85b3f48953"),
"Comments" : [ "Good", "Awesome", "Nice", "Cool" ]
}
দ্রষ্টব্য: আপনি যদি ডুপ্লিকেট অনুমতি দিতে চান তবে $push ব্যবহার করুন। $addToSet ইউনিক মান নিশ্চিত করে।