Say I have 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 in database (based on timestamp order).
timestamp
I want to get 6, 7, 8, 9, 10 in sequentia
To achieve your requirement you can use aggregate query
MessageModel.aggregate([ { $sort : { timestamp: -1} }, { $limit : 5 }, { $sort : { timestamp: 1} } ]) .exec();