MongoDB-এ দুটি বা অধিক অ্যারে ফিল্ড একত্রিত করে একটি অ্যারে বানাতে এগ্রিগেশন পাইপলাইনে $concatArrays অপারেটর ব্যবহার করুন।
উদাহরণ
দুটি অ্যারে ফিল্ড সহ ডকুমেন্ট তৈরি করুন:
> db.arrayConcatenationDemo.insertOne({
"TeacherName": ["Chris", "Robert"],
"StudentName": ["Mike", "Sam"]
});
{ "acknowledged" : true, "insertedId" : ObjectId("5ce921c078f00858fb12e911") }
ডকুমেন্টটি দেখুন:
> db.arrayConcatenationDemo.find().pretty();
আউটপুট:
{ "_id" : ObjectId("5ce921c078f00858fb12e911"), "TeacherName" : [ "Chris", "Robert" ], "StudentName" : [ "Mike", "Sam" ] }
দুই অ্যারে একত্রিত করা
> db.arrayConcatenationDemo.aggregate([
{
$project: {
"StudentAndTeacherName": { $concatArrays: [ "$TeacherName", "$StudentName" ] }
}
}
]);
আউটপুট:
{ "_id" : ObjectId("5ce921c078f00858fb12e911"), "StudentAndTeacherName" : [ "Chris", "Robert", "Mike", "Sam" ] }
ব্যাখ্যা:
$concatArrays: [ array1, array2, ... ]— একাধিক অ্যারে প্যারামিটার নেয়, ক্রমাঙ্কই অ্যাপেন্ড করে।- অসল ডকুমেন্ট পরিবর্তন হয় না, শুধু আউটপুটে নতুন ফিল্ড তৈরি হয়।
- null বা missing ফিল্ড খালি অ্যারে হিসেবে বিবেচিত হয়।
ব্যবহারিক পরিস্থিতি: রিপোর্টিং, ডেটা এক্সপোর্ট, একাধিক সোর্স থেকে ডেটা মার্জ করার সময়।
নোট: MongoDB ৪.৪+ এ $setUnion (ইউনিক ভ্যালু), $setIntersection, $setDifferenceও রয়েছে সেট অপারেশনের জন্য।