Database

db={"posts":[{"_id":ObjectId("5ece3bb99ef8e032c07f9aba"),"title":"Post1 title","short_description":"Post1 short_description","full_text":"Post1 full_text","category":ObjectId("5ece3b489ef8e032c07f9ab8"),"updated_at":ISODate("2020-05-27T13:06:49.198+03:00"),"created_at":ISODate("2020-05-27T13:06:49.198+03:00"),"__v":NumberInt(0)},{"_id":ObjectId("5ece3bc29ef8e032c07f9abb"),"title":"Post2 title","short_description":"Post2 short_description","full_text":"Post2 full_text","category":ObjectId("5ece3b489ef8e032c07f9ab8"),"updated_at":ISODate("2020-05-27T13:06:58.510+03:00"),"created_at":ISODate("2020-05-27T13:06:58.510+03:00"),"__v":NumberInt(0)},{"_id":ObjectId("5ece3bc99ef8e032c07f9abc"),"title":"Post3 title","short_description":"Post3 short_description","full_text":"Post3 full_text","category":ObjectId("5ece3b489ef8e032c07f9ab8"),"updated_at":ISODate("2020-05-27T13:07:05.754+03:00"),"created_at":ISODate("2020-05-27T13:07:05.754+03:00"),"__v":NumberInt(0)},{"_id":ObjectId("5ece3bd19ef8e032c07f9abd"),"title":"Post4 title","short_description":"Post4 short_description","full_text":"Post4 full_text","category":ObjectId("5ece3b489ef8e032c07f9ab8"),"updated_at":ISODate("2020-05-27T13:07:13.134+03:00"),"created_at":ISODate("2020-05-27T13:07:13.134+03:00"),"__v":NumberInt(0)},{"_id":ObjectId("5ece3bdc9ef8e032c07f9abe"),"title":"Post5 title","short_description":"Post5 short_description","full_text":"Post5 full_text","category":ObjectId("5ece3b5b9ef8e032c07f9ab9"),"updated_at":ISODate("2020-05-27T13:07:24.083+03:00"),"created_at":ISODate("2020-05-27T13:07:24.083+03:00"),"__v":NumberInt(0)},{"_id":ObjectId("5ece3bea9ef8e032c07f9abf"),"title":"Post6 title","short_description":"Post6 short_description","full_text":"Post6 full_text","category":ObjectId("5ece3b5b9ef8e032c07f9ab9"),"updated_at":ISODate("2020-05-27T13:07:38.239+03:00"),"created_at":ISODate("2020-05-27T13:07:38.239+03:00"),"__v":NumberInt(0)}],"categories":[{"_id":ObjectId("5ece3b489ef8e032c07f9ab8"),"name":"Category 1","__v":NumberInt(0)},{"_id":ObjectId("5ece3b5b9ef8e032c07f9ab9"),"name":"Category 2","__v":NumberInt(0)}]}

Query

db.posts.aggregate([{$match:{}},{$sort:{created_at:-1}},{$lookup:{from:"categories",localField:"category",foreignField:"_id",as:"category"}},{$addFields:{category:{$arrayElemAt:["$category",0]}}},{$facet:{totalRecords:[{$count:"total"}],data:[{$skip:0},{$limit:5}]}}])

Result