11
我一直在尋找一段時間,似乎無法排序內部數組,並保持在我目前正在使用的文檔中。Mongodb排序內部陣列
{
"service": {
"apps": {
"updates": [
{
"n" : 1
"date": ISODate("2012-03-10T16:15:00Z")
},
{
"n" : 2
"date": ISODate("2012-01-10T16:15:00Z")
},
{
"n" : 5
"date": ISODate("2012-07-10T16:15:00Z")
}
]
}
}
}
所以我想保留該項目作爲服務返回,但有我的更新數組排序。到目前爲止,我有:
db.servers.aggregate(
{$unwind:'$service'},
{$project:{'service.apps':1}},
{$unwind:'$service.apps'},
{$project: {'service.apps.updates':1}},
{$sort:{'service.apps.updates.date':1}});
任何人都認爲他們可以幫助嗎?
太棒了!我對聚合非常陌生,並且有一種感覺,它可以做這樣的事情。 – 2013-03-13 15:26:03
如果應用程序具有「名稱」字段,並且我想將名稱保留在結果集中,那麼該怎麼辦? – 2013-03-13 15:57:33
@ user1251624你可以在'$ group'(在'_id'或作爲一個單獨的字段)和'$ project'中包含該字段。如果你需要更多的幫助,最好把它當作一個單獨的問題來討論,因爲它可以是不重要的。 – JohnnyHK 2013-03-13 16:06:18