خطوط التجميع (Aggregation Pipelines)
في هذا الدرس 4 موضوعات
هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.
نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.
في هذا الدرس
compute summaries in the database.
الموضوعات المخطط لها
- A pipeline is a list of stages; each passes documents to the next:
$match,$group,$sort,$project,$lookup. - Put
$matchfirst so it can use an index and shrink the data. $groupwith$avgand$sumcomputes counts and averages.- Do the work in the database instead of loading documents into Java.
$lookupis a join; use sparingly, it is not a relational join engine.
تفاصيل المخطط المبدئي
عرض عملي
db.reviews.aggregate([
{ $match: { productId: 42 } },
{ $group: { _id: "$rating", count: { $sum: 1 } } },
{ $sort: { _id: -1 } }
])اختبر فهمك
Why put $match first?
أظهر الإجابة
It uses an index and reduces the documents later stages process.
التطبيق
طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.
تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.