MongoDB ফিল্ড আপডেট করতে অন্য ফিল্ডের ভ্যালু ব্যবহার করে aggregate ফাংশন ব্যবহার করতে পারেন। এখানে, আমরা দুটি কালেকশন তৈরি করব:
name
studentInformation
<name> Collection
প্রথম কালেকশন ডকুমেন্টসহ তৈরির কুয়েরি:
> db.name.insert({"FirstName":"John","LastName":"Smith"}); WriteResult({ "nInserted" : 1 })
find() মেথডের সাহায্যে কালেকশন থেকে সব ডকুমেন্ট দেখান। কুয়েরি:
> db.name.find().pretty();
"name" কালেকশনের ডকুমেন্ট দেখানোর আউটপুট:
{ "_id" : ObjectId("5c6c00dd68174aae23f5ef55"), "FirstName" : "John", "LastName" : "Smith" }
<studentInformation> Collection
দ্বিতীয় কালেকশন ডকুমেন্টসহ তৈরির কুয়েরি:
> db.studentInformation.insert({"StudentFirstName":"Carol","StudentLastName":"Taylor"}); WriteResult({ "nInserted" : 1 })
find() মেথডের সাহায্যে সব ডকুমেন্ট দেখান। কুয়েরি:
> db.studentInformation.find().pretty();
আউটপুট:
{ "_id" : ObjectId("5c6c013068174aae23f5ef56"), "StudentFirstName" : "Carol", "StudentLastName" : "Taylor" }
এখন, "name" কালেকশন আপডেট করি "studentInformation" কালেকশন দিয়ে। কুয়েরি:
> db.studentInformation.aggregate( [
{"$addFields":{"FullName":{"$concat":["$StudentFirstName"," ","$StudentLastName"] }}},
{"$out":"name"} ] );
এখন "name" কালেকশনের ডকুমেন্ট চেক করি। কুয়েরি:
> db.name.find().pretty();
আউটপুট যা দেখায় আমরা সফলভাবে ফিল্ডগুলো আপডেট করেছি:
{ "_id" : ObjectId("5c6c013068174aae23f5ef56"), "StudentFirstName" : "Carol", "StudentLastName" : "Taylor", "FullName" : "Carol Taylor" }