1
我有這兩個MongoDB文檔。我想找到真正的和巴薩的體育場館的容量,假設皇馬有兩個場館(對不起皇馬:)嵌入文檔數組 - MongoDB
{
"_id" : "Bar.43",
"official_name" : "Futbol Club Barcelona
"country" : "Spain",
"started_by" : {
"day" : 28,
"month" : 11,
"year" : 1899
},
"stadium" : {
"name" : "Camp Nou",
"capacity" : 99354
},
"palmarès" : {
"La Liga" : 23,
"Copa del Rey" : 27,
"Supercopa de Espana" : 11,
"UEFA Champions League" : 4,
"UEFA Cup Winners Cup" : 4,
"UEFA Super Cup" : 4,
"FIFA Club World cup" : 2
},
"uniform" : "blue and dark red"
},
{
"_id" : "RMa.103",
"official_name" : "Real Madrid Club de Fùtbol
"country" : "Spain",
"started_by" : {
"day" : 6,
"month" : 3,
"year" : 1902
},
"stadium" : [{
"name" : "Santiago Bernabeu",
"capacity" : 85454
},
{
"name" : "Vicente Calderon"
"capacity" : 54907
}],
"palmarès" : {
"La Liga" : 32,
"Copa del Rey" : 19,
"Supercopa de Espana" : 9,
"UEFA Champions League" : 10,
"UEFA Europa League" : 2,
"UEFA Super Cup" : 2,
"FIFA Club World cup" : 4
},
"uniform" : "white"
}
好,我的查詢是:
db.team.aggregate([{$group:{_id:"$country", capacityStadium:{$sum:"$stadium.capacity"}}}])
但它不工作。如果皇家馬德里只有一個體育場,相反,我的查詢工作。所以,一般來說,當我有一個嵌入式文檔數組,並且我想要使用聚合時,我必須使用$ unwind來劃分該數組的文檔嗎? 問題是巴塞羅那的場地球場不是一組文件,而且查詢出現錯誤。