精通MongoDB聚合操作API:深入探索高级技巧与实践
// 假设我们有一个名为 "orders" 的集合,我们想要统计每个 "status" 的数量,并按照 "status" 进行分组。
db.orders.aggregate([
{
$group: {
_id: "$status", // 分组依据是 "status" 字段
count: { $sum: 1 } // 每个组的文档计数
}
},
{
$sort: { count: -1 } // 根据 count 字段降序排序
}
]);
这段代码使用了MongoDB的聚合管道操作。$group
阶段将文档按 "status" 字段分组,并用 $sum
累加器来计算每个组的文档数量。$sort
阶段则对这些分组结果按 "count" 字段进行降序排序。这样我们就可以得到每个 "status" 状态的订单数量,并且可以了解哪个状态的订单数量最多。
评论已关闭