2012-06-09 51 views
-1

如何从表中获取前40条记录,我在java中使用resultset,并且可以获得前40位和后40位等等,但我没有使用paggination。我从表中获取有限记录

+2

请再具体些。你使用的是什么数据库(MySQL/Oracle/etc),分页限制或要求是什么? –

+0

我正在使用oracle – Mohan

回答

0

我认为您正在寻找分页,每页包含40个数据项。

查询会是这样 -

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

我认为从性能的角度来看,从结果集中提取一些记录并不是一个好主意,因为它会每次加载整个表数据。如果您启动分页查询以仅加载所需数据(语法取决于数据库,例如MySql提供Limit子句),那将会很好。

0

不确定你的问题到底是什么。但是如果我理解正确,那么您一次只需从数据库中获取40条记录,并在需要时获取每批40条记录。

如果上述属实,则可以使用CachedRowSet。在此,您可以使用setPageSize()来设置批次的大小。

如果这不是你想要的,请为你的问题添加更多解释。

相关问题