rownum е псевдо колона, която брои редовете в резултатния набор след е приложена клаузата where.
Това ли се опитвате да получите?
SELECT *
FROM (
SELECT id, column1, column2
FROM atable ORDER BY 2 DESC
)
WHERE ROWNUM < 100;
Тъй като това е псевдо колона, която е строго брояч на редове, произтичащи от клаузата where, тя няма да ви позволи да правите пагинация (т.е. между 200 и 300).
Това вероятно е това, което търсите:
SELECT *
FROM
(SELECT a.*, rownum rnum FROM
(SELECT id, column1, column2 FROM atable ORDER BY 2 DESC) a WHERE rownum <= 300)
WHERE rnum >= 200;