Database
[{_id:"A",value:"Apple",createdAt:ISODate("2021-12-09T20:15:26.421+00:00")},{_id:"B",value:"Blueberry",createdAt:ISODate("2021-12-09T20:45:26.421+00:00")},{_id:"C",value:"Cranberry",createdAt:ISODate("2021-12-09T21:30:26.421+00:00")},{_id:"D",value:"Durian",createdAt:ISODate("2022-01-24T20:15:26.421+00:00")},{_id:"E",value:"Elderberry",createdAt:ISODate("2022-01-24T20:45:26.421+00:00")}]
Query
db.collection.aggregate([{$sort:{createdAt:1}},{$limit:1},{"$lookup":{"from":"collection",let:{current:"$createdAt"},pipeline:[{$match:{$expr:{$gte:["$createdAt","$$current"]}}}],"as":"within"}},{"$addFields":{"within":{"$reduce":{"input":"$within","initialValue":null,"in":{"$cond":{"if":{$or:[{$eq:["$$value",null]},{$lte:[{"$subtract":["$$this.createdAt","$$value.createdAt"]},3600000]}]},"then":"$$this","else":"$$value"}}}}}}])