Můžete použít:
WHERE ROWNUM <= :NUM
...ale tabulka musí obsahovat řádek rovný nebo větší než limit ve vazební proměnné. Tento odkaz ukazuje různé techniky generování čísel řádků v Oracle .
Pomocí CONNECT BY
, Oracle 10g+:
SELECT LEVEL
FROM DUAL
CONNECT BY LEVEL <= :NUM
Potvrzeno monojohnny
že lze použít proměnnou vazby. Pokusy o spuštění na Oracle 9i, ačkoli CONNECT BY
syntaxe je podporována, což vede k chybě ORA-01436.
Jediná věc, na které nejsem 100%, je, jestli CONNECT BY přijme limit z proměnné vazby.
Reference: