Database

[{"_id":1,"created_at":ISODate("2020-08-21T20:11:28.761Z")},{"_id":2,"created_at":ISODate("2020-08-22T20:11:28.761Z")},{"_id":3,"created_at":ISODate("2020-08-23T20:11:28.761Z")},{"_id":4,"created_at":ISODate("2020-08-24T20:11:28.761Z")},{"_id":5,"created_at":ISODate("2020-08-25T20:11:28.761Z")},{"_id":6,"created_at":ISODate("2020-08-26T20:11:28.761Z")},{"_id":7,"created_at":ISODate("2020-08-27T20:11:28.761Z")},{"_id":8,"created_at":ISODate("2020-08-28T20:11:28.761Z")},{"_id":9,"created_at":ISODate("2020-08-29T20:11:28.761Z")},{"_id":10,"created_at":ISODate("2020-08-30T20:11:28.761Z")},]

Query

db.collection.aggregate([{$match:{_id:5/** use mongoose.Types.ObjectId('YOUROBJECTID')*/}},{$lookup:{from:"collection",as:"beforeDocs",let:{"parent_created_at":"$created_at"},pipeline:[{$match:{/** Need to use $expr to access parent created at date*/$expr:{$lt:["$created_at","$$parent_created_at"]}}},{$sort:{created_at:-1}},{$limit:5}]}},{$lookup:{from:"collection",as:"afterDocs",let:{"parent_created_at":"$created_at"},pipeline:[{$match:{$expr:{$gt:["$created_at","$$parent_created_at"]}}},{$sort:{created_at:1}},{$limit:5}]}},])

Result