rownum is een pseudo-kolom die rijen telt in de resultatenset na de waar-clausule is toegepast.
Is dit wat je probeert te krijgen?
SELECT *
FROM (
SELECT id, column1, column2
FROM atable ORDER BY 2 DESC
)
WHERE ROWNUM < 100;
Omdat het een pseudokolom is die strikt een teller van rijen is die voortkomt uit de waar-clausule, kunt u geen paginering uitvoeren (d.w.z. tussen 200 en 300).
Dit is waarschijnlijk wat je zoekt:
SELECT *
FROM
(SELECT a.*, rownum rnum FROM
(SELECT id, column1, column2 FROM atable ORDER BY 2 DESC) a WHERE rownum <= 300)
WHERE rnum >= 200;