$maxN (مُراكم أعلى N قيم)
آخر تحديث: 2026-10-09
$maxN (مُراكم أعلى N قيم)
$maxN مُراكم يُرجع مصفوفة أكبر N قيم مميزة لحقل في مجموعة، متاح منذ MongoDB 5.2. لا حاجة لمواصفات فرز — يأخذ أكبر N قيم؛ ترتيب النتائج غير مضمون. مفيد لإحصائيات أعلى-N قيمة لكل مجموعة.
| الفئة | التراكميات |
|---|---|
| إصدار MongoDB | 5.2+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
{ $group: { _id: <key>, maxN: { $maxN: { input: <expression>, n: <number> } } } }
القيمة المرجعة:مصفوفة بأكبر N من القيم المميزة في المجموعة
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// $maxN: أفضل 3 درجات مميزة لكل صف
db.scores.aggregate([
{ $group: { _id: '$class', topScores: { $maxN: { input: '$score', n: 3 } } } }
])
المخرجات:
{ "_id": "A", "topScores": [98, 95, 92] }
📌 ملاحظات
- يتطلب MongoDB 5.2 أو أحدث
- يزيل التكرار تلقائيًا — مجموعة من القيم القصوى المميزة
- على خلاف $topN، يُرجع $maxN قيمًا فقط، لا مستندات مرتبة
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مزيد من الحالات العملية قريبًا.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qهل يزيل $maxN التكرار؟
Aنعم، يُرجع مجموعة قيم قصوى مميزة.
Qما الفرق بين $maxN و $topN؟
Aيأخذ $maxN أكبر N قيم مميزة؛ بينما يأخذ $topN الأعلى N مستندات وفق قاعدة sortBy.
Qهل النتيجة مرتبة؟
Aالترتيب غير مضمون؛ رتب النتيجة بـ $sort إذا لزم.