Вы не можете «пропустить» в зависимости от размера коллекции, потому что она не будет учитывать условия запроса.
Правильное решение состоит в сортировке с нужной конечной точки, ограничение размер набора результатов, затем при необходимости отрегулируйте порядок результатов.
Вот пример, основанный на реальном коде.
var query = collection.find( { conditions } ).sort({$natural : -1}).limit(N);
query.exec(function(err, results) {
if (err) {
}
else if (results.length == 0) {
}
else {
results.reverse(); // put the results into the desired order
results.forEach(function(result) {
// do something with each result
});
}
});