在关键字之间使用oracle Rownum

时间:2011-09-06 09:34:29

标签: oracle

我打算在Oracle中使用JDBC分页(基于查询的技术)不缓存结果。 当我试图在Option之间使用rownum时,它没有给我任何结果

从mytable中选择*,其中rownum在10到20之间;

但这给了我结果。

从mytable中选择*,其中rownum< 20;
请给我打电话如何解决?

3 个答案:

答案 0 :(得分:4)

我刚刚回答了一个非常类似的问题,接近它的一种方法就是这样做:

select *
from
( select rownum rnum, a.*
from (your_query) a
where rownum <= :M )
where rnum >= :N;

为rownum提供一个小包装。

我不认为这对于大批量实现是明智的。虽然我没有测试过它。

答案 1 :(得分:1)

请参阅this question,了解BETWEEN无法与ROWNUM和Oracle & Pagination一起使用的原因,以及this one有关如何在Oracle查询中执行分页的说明。

答案 2 :(得分:0)

选择*  来自(     SELECT rownum AS r,ID,UNIT_NAME     FROM MWT_COMPANY_UNIT)
 在10和20之间