$push একসাথে একাধিক ফিল্ডে
একই update() কল-এ $push অবজেক্টে একাধিক অ্যারে ফিল্ড নির্দিষ্ট করে দুটি আলাদা অ্যারে-এ একসাথে মান পুশ করা যায়।
উদাহরণ: ডকুমেন্ট তৈরি
> db.twoSeparateArraysDemo.insertOne({"StudentName":"Larry","StudentFirstGameScore":[98],"StudentSecondGameScore":[77]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b152815e86fd1496b38b8") }
> db.twoSeparateArraysDemo.insertOne({"StudentName":"Mike","StudentFirstGameScore":[58],"StudentSecondGameScore":[78]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b152d15e86fd1496b38b9") }
> db.twoSeparateArraysDemo.insertOne({"StudentName":"David","StudentFirstGameScore":[65],"StudentSecondGameScore":[67]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b153315e86fd1496b38ba") }
Mike-এর (_id: 5c9b152d...) দুটি অ্যারে-এ পুশ
> db.twoSeparateArraysDemo.update(
{ _id: ObjectId("5c9b152d15e86fd1496b38b9") },
{ $push: {
StudentFirstGameScore: 45,
StudentSecondGameScore: 99
}}
);
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
ফাইনাল ডেটা
> db.twoSeparateArraysDemo.find().pretty();
আউটপুট (Mike):
{
"StudentName" : "Mike",
"StudentFirstGameScore" : [ 58, 45 ],
"StudentSecondGameScore" : [ 78, 99 ]
}
নোট: $push ডুপ্লিকেট 허용 করে। ইউনিক রাখতে $addToSet ব্যবহার করুন। $each দিয়ে একসাথে একাধিক মান পুশ করাও যায়: { $push: { scores: { $each: [1,2,3] } } }।