terça-feira, 28 de agosto de 2012

Como fazer limit no oracle? Simule a condição Limit.

Sim meus queridos amantes do MYSQL, o Oracle não tem a clausula Limit. O jeito é simular isto.



SELECT * FROM (
    SELECT 

        ROW_NUMBER() OVER (ORDER BY ordem) AS row_id_pagina, 
        TABELA.*
    FROM TABELA
)
WHERE
row_id_pagina BETWEEN 40000 AND 42000
;



A cláusula Limit será emulada pelo BETWEEN, não é a solução mais exímia em desempenho, mas é melhor do que ficar trafegando todos os dados da tabela pela rede e fazer a lógica no código fonte do seu projeto.


Nenhum comentário:

Postar um comentário