MongoDB聚合将多个文档转换为带有数组的单个文档?
对于MongoDB中的汇总,请使用aggregate()。让我们创建一个包含文档的集合-
> db.demo248.insertOne({"id":101,"Name":"Chris","Age":21,"CountryName":"US"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e46b6651627c0c63e7dba6d")
}
> db.demo248.insertOne({"id":101,"Name":"Bob","Age":22,"CountryName":"UK"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e46b6741627c0c63e7dba6e")
}
> db.demo248.insertOne({"id":102,"Name":"Mike","Age":20,"CountryName":"AUS"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e46b6811627c0c63e7dba6f")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo248.find();
这将产生以下输出-
{ "_id" : ObjectId("5e46b6651627c0c63e7dba6d"), "id" : 101, "Name" : "Chris", "Age" : 21, "CountryName" : "US" }
{ "_id" : ObjectId("5e46b6741627c0c63e7dba6e"), "id" : 101, "Name" : "Bob", "Age" : 22, "CountryName" : "UK" }
{ "_id" : ObjectId("5e46b6811627c0c63e7dba6f"), "id" : 102, "Name" : "Mike", "Age" : 20, "CountryName" : "AUS" }以下是使用数组将多个文档转换为单个文档的查询-
> db.demo248.aggregate([
... {
... $group : {
... _id : "$id",
... details : {
... $push : {
... id:"$id",
... Name:"$Name",
... Age:"$Age",
... CountryName:"$CountryName"
... }
... }
... }
... }
...])这将产生以下输出-
{ "_id" : 102, "details" : [ { "id" : 102, "Name" : "Mike", "Age" : 20, "CountryName" : "AUS" } ] }
{ "_id" : 101, "details" : [ { "id" : 101, "Name" : "Chris", "Age" : 21, "CountryName" : "US" }, { "id" : 101, "Name" : "Bob", "Age" : 22, "CountryName" : "UK" } ] }热门推荐
10 诗词送行祝福语大全简短
11 新房开工吉日祝福语简短
12 50多岁生日简短祝福语
13 安徽疫情祝福语简短英语
14 农民朋友发财祝福语简短
15 对生活祝福语简短精辟
16 搬家词简短祝福语朋友
17 女神结婚快乐祝福语简短
18 文学短句祝福语大全简短