Database

[{"category":"fruit","date":"2023-01-01","amount":1,},{"category":"fruit","date":"2023-01-02","amount":2,},{"category":"meat","date":"2023-01-03","amount":3,},{"category":"nuts","date":"2023-01-04","amount":4,},{"category":"nuts","date":"2023-01-05","amount":5,},{"category":"nuts","date":"2023-01-06","amount":6,}]

Query

db.collection.aggregate([{$group:{_id:"$category",count:{$sum:1},maxDate:{$max:"$date"}}},{$lookup:{from:"collection",let:{category:"$_id",maxDate:"$maxDate"},pipeline:[{$match:{$expr:{$and:[{$eq:["$category","$$category"]},{$eq:["$date","$$maxDate"]}]}}},{$project:{_id:0,amount:1}}],as:"latestAmount"}},{$replaceRoot:{newRoot:{$mergeObjects:[{$arrayElemAt:["$latestAmount",0]},"$$ROOT"]}}},{$project:{maxDate:0,latestAmount:0}}])

Result