Я хочу просто получить среднее региональное население города для всех стран в коллекции городов. Я думаю, что мой первый групповой этап работает с тем, чтобы дать мне все разные регионы со средним населением этого региона. Мой план состоял в том, чтобы перейти к следующему этапу сейчас, указать его по стране, а затем построить avg всех тех ценностей, которые я получил на своем первом групповом этапе. Возможно, у меня есть ошибка в моем мышлении здесь или, скорее, мое исполнение, так как я новичок в mongo db и конвейерной вещи. Ниже моего кода я помещаю данные примера.
pipeline = [
{ '$unwind' : '$isPartOf'},
{
"$group":
{
"_id": "$isPartOf",
"avgpop" : {"$avg":"$population"},
}
},
{
"$group":
{
"_id": "$country",
"avgpopc" : {"$avg":"$avgpop"},
}
}
]
{
"_id" : ObjectId("52fe1d364b5ab856eea75ebc"),
"elevation" : 1855,
"name" : "Kud",
"country" : "India",
"lon" : 75.28,
"lat" : 33.08,
"isPartOf" : [
"Jammu and Kashmir",
"Udhampur district"
],
"timeZone" : [
"Indian Standard Time"
],
"population" : 1140
}