Тогда вы выходите - повторное выделение является единственной возможностью, если только вы не хотите получить полный набор результатов, а затем отбрасывать все промежуточное.
ЛЮБОЙ sql Я не могу думать о том же - для дна вам нужно сначала узнать, сколько у вас предметов (материализовать все или использовать count (*)) или обратный порядок сортировки.
Извините, если вас это не устраивает, но в конце .... реальности все равно, и я не вижу другого способа сделать это.