如何在 MongoDB 中聚合数组文档?
mongodbdatabasebig data analytics更新于 2026/2/14 3:37:17
为此,请使用聚合框架。首先,我们创建一个包含文档的集合。 −
> db.aggregateArrayDemo.insertOne(
{
"_id":100,
"UserDetails": [
{
"UserName": "John",
"UserLoginYear":2010
},
{
"UserName": "Carol",
"UserLoginYear":2019
}
]
}
);
{ "acknowledged" : true, "insertedId" : 100 }
以下是使用 find() 方法显示集合中的所有文档的查询 −
> db.aggregateArrayDemo.find().pretty();
这将产生以下输出 −
{
"_id" : 100,
"UserDetails" : [
{
"UserName" : "John",
"UserLoginYear" : 2010
},
{
"UserName" : "Carol",
"UserLoginYear" : 2019
}
]
}
以下是聚合数组文档的查询 −
> db.aggregateArrayDemo.aggregate([
{
$match: { _id: 100 }
},
{
$project: {
Minimum: { $min: "$UserDetails.UserLoginYear" },
Maximum: { $max: "$UserDetails.UserLoginYear" }
}
}
]);
这将产生以下输出 −
{ "_id" : 100, "Minimum" : 2010, "Maximum" : 2019 }

