💻 Tech
Just like in SQL, MongoDB, a document-based database can also perform data aggregation. The example query below uses $sum
, which is similar to SQL’s SUM()
function.
The example query below is equivalent to SQL’s SELECT SUM(salary) total_salary ... GROUP BY dept_id
. _id
value specifies the grouping key, which in this case is the dept_id
field. It has the dollar character to signify that it’s a document field.
[
{
"$group": {
"_id": "$dept_id",
"total_salary": {
"$sum": "$salary"
}
}
}
]
If you want to incorporate multiple grouping key, you can make _id
a composite key.
[
{
"$group": {
"_id": {
deptId: "$dept_id",
type: "$type"
},
"total_salary": {
"$sum": "$salary"
}
}
}
]