Database
[{"_id":{"m":1,"y":2020},"meals":[{"name":"Sandwich","servings":2},{"name":"Fish","servings":7},{"name":"Pizza","servings":3},{"name":"Beef","servings":3},{"name":"Soup","servings":3}]},{"_id":{"m":12,"y":2018},"meals":[{"name":"Beef","servings":1},{"name":"Spaghetti","servings":2}]}]
Query
db.collection.aggregate([{$unwind:"$meals"},{$sort:{"meals.servings":-1}},{$group:{_id:"$_id",meals:{$push:"$meals"}}},{$project:{meals:{$slice:["$meals",3]}}}])