編集:3レベルの選択で修正する必要があります:
select * from (
select q1.*, rownum as rn from ( --get correct rownum
select * from tbl order by column --get correct order
) q1
) q2
where q2.rn between 1 and 4; -- filter
最初の部分。
2番目と3番目の部分の場合:
where q2.rn between 5 and 8
where q2.rn between 9 and 12