$setUnion (اتحاد المجموعات)

آخر تحديث: 2026-10-09

$setUnion (اتحاد المجموعات)

يُرجع $setUnion اتحاد مصفوفتين أو أكثر، مع إزالة التكرار ودون ترتيب عناصر مضمون. كتعبير مجموعات فهو شائع في $project و $addFields؛ ومنذ MongoDB 8.1 يمكنه أيضًا العمل كمُراكم $group. وعلى خلاف $concatArrays، يزيل التكرار. يناسب دمج الوسوم أو قوائم الصلاحيات.

الفئةالتراكميات
إصدار MongoDB1.0+
لغة المثالmongosh (الطرفية)

📝 الصيغة

{ $setUnion: [ <array1>, <array2>, ... ] }

القيمة المرجعة:اتحاد جميع مصفوفات الإدخال (بدون تكرار وغير مرتَّب)

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// $setUnion: دمج مصفوفات الوسوم مع إزالة التكرار
db.products.aggregate([
  { $project: { allTags: { $setUnion: ['$tags', ['hot']] } } }
])

المخرجات:

// الوسوم الموجودة لا تُكرَّر

📌 ملاحظات

مزيد من الحالات العملية قريبًا.

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qما الفرق بين $setUnion و $concatArrays؟
Aيزيل $setUnion التكرار وغير مرتب؛ بينما يُبقي $concatArrays كل عنصر مرتبًا.
Qهل يجب أن تكون المدخلات مصفوفات؟
Aنعم، كل إدخال يجب أن يكون مصفوفة وإلا يرمي خطأ.
Qهل يمكن أن يكون مُراكم $group؟
Aمنذ MongoDB 8.1، نعم — توحيد حقول المجموعات عبر مستندات المجموعة.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%