MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Mongodb ordina l'array interno

Puoi farlo con $unwind negli updates array, ordinando i documenti risultanti per date , quindi $group ricollegandoli su _id utilizzando l'ordine ordinato.

db.servers.aggregate(
    {$unwind: '$service.apps.updates'}, 
    {$sort: {'service.apps.updates.date': 1}}, 
    {$group: {_id: '$_id', 'updates': {$push: '$service.apps.updates'}}}, 
    {$project: {'service.apps.updates': '$updates'}})