0
鑑於這樣的數據:如何使用聚合管道按兩級分組進行排序?
[ {country:"US", city:"NY", cnt: 10}
{country:"IT", city:"MI", cnt: 9}
{country:"US", city:"LA", cnt: 8}
{country:"IT", city:"RM", cnt: 20} ]
是否有使用MongoDB的聚合管道創建一個結果數組,看起來像這樣(不基於阿爾法碼,只是CNT)的方式:
[ {country:"IT", city:"RM", cnt:20}
{country:"IT", city:"MI", cnt: 9}
{country:"US", city:"NY", cnt:10}
{country:"US", city:"LA", cnt: 8} ]
}
換句話說,一個數組按照總數最高的國家排序(降序),然後按每個城市的最高總數排序(降序)?
我可以按國家或國家和城市分組,但都不會給我上述結果。每個國家給我兩條總計,另一條給我四條國家城市總數,但沒有按總數最高的國家排序。在
{ "$sort": { "country": 1, "cnt": -1 } }
結果:
它這個聚合的結果已經或者它只是一個集合中的文件?還關心這些是文檔結果還是文檔中數組的一部分? –