MongoDB অ্যাগ্রিগেশনে একই ডকুমেন্টের দুটি অ্যারে ফিল্ডের ইউনিক ভ্যালুগুলো একসাথে (Union) বের করতে $setUnion অপারেটর ব্যবহার করা হয়। এটি ডুপ্লিকেট রিমুভ করে কোম্বাইন করা সেট রিটার্ন করে।
উদাহরণ: দুটি নামের অ্যারে (ডুপ্লিকেট ও ওভারল্যাপ সহ)
> db.demo608.insertOne({
"ListOfName1": ["John", "Chris", "Bob", "David"],
"ListOfName2": ["Bob", "Sam", "John", "Robert", "Chris"]
});
$setUnion দিয়ে ইউনিক নামের সেট বের করা
> db.demo608.aggregate([
{ $project: { SetOfNames: { $setUnion: [ "$ListOfName1", "$ListOfName2" ] } } }
]).pretty();
আউটপুট:
{ "_id" : ..., "SetOfNames" : [ "Bob", "Chris", "David", "John", "Robert", "Sam" ] }
সেট অপারেটর সমূহ:
| অপারেটর | কাজ |
|---|---|
$setUnion | ইউনিয়ন (A ∪ B) - ডুপ্লিকেট বাদে সব |
$setIntersection | ইন্টারসেকশন (A ∩ B) - উভয়তে কমন |
$setDifference | ডিফারেন্স (A - B) - A-তে আছে B-তে নেই |
$setIsSubset | চেক: A ⊆ B (বুলিয়ান রিটার্ন) |
$setEquals | চেক: A = B (বুলিয়ান রিটার্ন) |