请教一下分组分页查询问题
最近在做维护,由于数据量比较大,不能将数据一次性查询出来,只能按照分页的思想来分次处理,但由于数据比较复杂,不知道怎么样处理更合理,请大家帮忙看看,非常感谢。
--表结构如下
DETAIL_ID POINT_ID create_time
001 3245 20080802000000
002 3241 20080808000000
003 3241 20080802000000
004 3245 20080805000000
005 3241 20080802000000
006 3245 20080803000000
说明:同一POINT_ID有多条流水记录,需要按POINT_ID分组,按DETAIL_ID排序,每次我只取1000个POINT_ID,需要保证同一个POINT_ID下的明细记录不被分隔.
有没有更好的方法?
select a.DETAIL_ID,a.POINT_ID,a.create_time
from BE_POINT_DETAIL where a.create_time >= '20080801000000' and a.create_time < '20081101000000' and a.POINT_ID in (
select * from (select distinct(a.point_id) point_id from BE_POINT_DETAIL a,BE_PURSE b where a.create_time >= '20080801000000' and a.create_time < '20081101000000' )
where rownum >= 1 and rownum < 1000)
order by a.detail_id;