Bom dia dbq !
Sem querer causar pol?mica, tem uma incorre??o na sua afirma??o.
Quando vc utiliza “rownum = 5” ele n?o traz nenhuma linha.
Por qu??
O ROWNUM ? uma fun??o que retorna o n?mero da linha TRAZIDA pelo select. Quando vc faz:
select * from tabela where rownum=5,
Ele faz da seguinte forma:
Ele traz a primeira linha; qual ? ROWNUM? ? 1 portanto descarta porque n?o ? igual a 5.
Traz a segunda linha; Qual ? o ROWNUM? ? 1 tamb?m portanto descarta porque n?o ? igual a 5.
E assim sucessivamente, por isto n?o traz nenhuma linha.
Quando vc especifica: select table_name from dba_tables where rownum=5;
n?o h? linhas selecionadas
SQL> select table_name from dba_tables where rownum SQL> select table_name from dba_tables where rownum > 5;
n?o h? linhas selecionadas
SQL>
P.S. Com o sinal de > tb n?o funciona pelo mesmo motivo.
Espero ter ajudado.
Abra?os.