Je crois que vous cherchez quelque chose comme ça dans Oracle :
select *
from ( select a.*, rownum rnum
from ( YOUR_QUERY_GOES_HERE -- including the order by ) a
where rownum <= MAX_ROWS )
where rnum >= MIN_ROWS
/
Une bonne discussion de Ask Tom est ici