Free online courseMongoDB Aggregation Framework: Master the Aggregation Pipeline
Duration of the online course: 1 hours and 54 minutes
New
Free course to master MongoDB Aggregation Framework: build pipelines with $match, $group, $project, $unwind, sorting, counting, and more.
In this free course, learn about
Introduction and Setup
Aggregation Fundamentals
Filtering with $match
Grouping with $group
Counting and Sorting Results
Shaping Output with $project
Limiting and Working with Arrays
Accumulators and Aggregation Operators
Writing Aggregation Results and Performance Options
Course Wrap-Up
Course Description
Learn how to transform, filter, and summarize MongoDB data using the Aggregation Framework and its powerful pipeline approach. This free online course focuses on practical query building so you can move beyond basic finds and create analytics-ready results directly inside MongoDB.
You will work with sample documents and follow the full aggregation process, building pipelines step by step with core stages such as $match, $group, $count, $sort, $project, $limit, and $unwind. Along the way, you will explore expressions, accumulators, and operators like $sum, $avg, and $type, plus common patterns that combine stages for more efficient pipelines.
The course also covers real-world workflow topics such as restructuring documents with projections, handling arrays correctly, and writing output results using $out. You will finish with a clearer understanding of performance-minded options like allowDiskUse and how to reason about pipeline order to get the right results.
Ideal for developers and database learners in the Technology and Programming space who want a hands-on introduction to MongoDB aggregations, this training helps you build confident data processing pipelines for reporting, dashboards, and application features.
Course content
Video class: MongoDB Aggregation Framework Tutorial00m
Exercise: What is one key capability of the MongoDB Aggregation Framework highlighted in the module introduction?
Video class: 02 Loading sample documents - MongoDB Aggregation Tutorial01m
Video class: 03 Aggregation Process - MongoDB Aggregation Tutorial01m
Video class: 04 aggregate - MongoDB Aggregation Tutorial02m
Exercise: What is returned when calling aggregate([]) with an empty array (no stages)?
Video class: 05 Aggregation Stages Overview - MongoDB Aggregation Tutorial02m
Exercise: Which aggregation stage operator is used to filter documents by a query condition?
Video class: 06 Aggregation Expressions - MongoDB Aggregation Tutorial03m
Exercise: In MongoDB aggregation expressions, what does dot notation allow you to do?
Video class: 07 $match - MongoDB Aggregation Tutorial01m
Exercise: In MongoDB Aggregation Framework, which stage is used to filter documents by a condition like a city being New York and an age greater than 25?
Video class: MongoDB Aggregation Tutorial - $match03m
Exercise: What is true when an aggregation pipeline contains only a single $match stage?
Video class: 09 $group - MongoDB Aggregation Tutorial03m
Exercise: In the $group stage, what is the purpose of the mandatory _id field?
Video class: 10 Aggregation Example 2 $group - MongoDB Aggregation Tutorial03m
Exercise: In a pipeline that contains only one $group stage with _id: "$age", what documents are passed into the $group stage?
Video class: 11 Aggregation Example 3 $group by nested fields - MongoDB Aggregation Tutorial02m
Video class: MongoDB Aggregation Tutorial - $group by multiple fields03m
Video class: 13 Aggregation Example 5 $match and $group - MongoDB Aggregation Tutorial03m
Exercise: When a $match stage filtering gender: "female" is followed by a $group stage grouping by eyeColor, age, and gender, what will the output documents look like?
Video class: 14 Aggregation Example 6 swap $match and $group - MongoDB Aggregation Tutorial03m
Exercise: Why does placing the $group stage before the $match stage return 0 documents in the example?
Video class: 15 Aggregation Example 7 $group and $match - MongoDB Aggregation Tutorial03m
Video class: 16 $count - MongoDB Aggregation Tutorial01m
Video class: 17 Aggregation Example 8 $count - MongoDB Aggregation Tutorial01m
Video class: 18 Different documents count methods - MongoDB Aggregation Tutorial04m
Exercise: Which method is the most efficient way to count aggregated documents in an aggregation pipeline?
Video class: 19 Aggregation Example 9 $group and $count - MongoDB Aggregation Tutorial03m
Exercise: In an aggregation pipeline that uses $match, $group, and $count, what does the $count stage count?
Video class: 20 $sort - MongoDB Aggregation Tutorial02m
Exercise: In the MongoDB Aggregation Pipeline, how does the $sort stage specify ascending vs. descending order?
Video class: 21 Aggregation Example 10 $sort - MongoDB Aggregation Tutorial02m
Exercise: No MongoDB Aggregation Framework, qual opção melhor descreve o que é um aggregation pipeline?
Video class: 22 Aggregation Example 11 $group and $sort - MongoDB Aggregation Tutorial04m
Exercise: After a $group stage, which field is typically used to sort the grouped results by default?
Video class: 23 $project - MongoDB Aggregation Tutorial02m
Exercise: In a $project stage, what happens if all specified fields are set to 0?
Video class: 24 Aggregation Example 12 $project - MongoDB Aggregation Tutorial03m
Exercise: In a $project stage, what is the result when you set some fields to 1 (e.g., name: 1, isActive: 1, gender: 1)?
Video class: 25 Aggregation Example 13 $project with restructuring - MongoDB Aggregation Tutorial04m
Exercise: What is the main purpose of using the $project stage in this example?
Video class: 26 $limit - MongoDB Aggregation Tutorial01m
Video class: 27 Aggregation Example 14 $limit, $match and $group - MongoDB Aggregation Tutorial03m
Exercise: What is the main effect of adding a $limit stage before a $match stage in an aggregation pipeline?
Video class: 28 Arrays $group issue - MongoDB Aggregation Tutorial01m
Video class: 29 $unwind - MongoDB Aggregation Tutorial02m
Exercise: What is the main result of using the $unwind stage on an array field (e.g., tags)?
Video class: 30 Aggregation Example 15 $unwind and $project - MongoDB Aggregation Tutorial03m
Video class: 31 Aggregation Example 16 $unwind and $group - MongoDB Aggregation Tutorial02m
Exercise: When using $unwind followed by $group on the same tags field, what will the _id represent in the grouped output?
Video class: 32 Accumulators - MongoDB Aggregation Tutorial03m
Video class: 33 Accumulators Syntax - MongoDB Aggregation Tutorial01m
Exercise: In welke Aggregation Pipeline stage mogen accumulator-operators zoals $max worden gebruikt?
Video class: 34 $sum - MongoDB Aggregation Tutorial01m
Video class: 35 Aggregation Example 17 $sum and $group - MongoDB Aggregation Tutorial03m
Video class: 36 Aggregation Example 18 $sum, $unwind and $group - MongoDB Aggregation Tutorial02m
Exercise: What does adding an $unwind stage before a $group stage typically achieve when working with an array field?
Video class: 37 $avg - MongoDB Aggregation Tutorial01m
Exercise: What does the MongoDB $avg accumulator do inside a $group stage?
Video class: 38 Aggregation Example 19 $avg and $group - MongoDB Aggregation Tutorial02m
Exercise: In a $group stage, what does using {$avg: "$age"} compute when grouping documents by a field like eyeColor or company.location.country?
Video class: 39 Unary Operators - MongoDB Aggregation Tutorial02m
Video class: 40 $type - MongoDB Aggregation Tutorial00m
Video class: 41 Aggregation Example 20 $type and $project - MongoDB Aggregation Tutorial03m
Exercise: In an aggregation pipeline, where should the $type unary operator be used to return the BSON type of a field for each document?
Video class: 42 $out - MongoDB Aggregation Tutorial01m
Video class: 43 Aggregation Example 21 $out - MongoDB Aggregation Tutorial02m
Video class: 44 allowDiskUse Option - MongoDB Aggregation Tutorial02m
Video class: 45 Aggregation Module Summary - MongoDB Aggregation Tutorial00m
Exercise: Wat is de hoofdrol van het Aggregation Framework in MongoDB?