我的需求是在ORACLE的一张表里面获取如第1条到第20000条数据,第20000条到第40000条记录,按批次把所要记录都打印出来

解决方案 »

  1.   

    表中有无唯一标识的字段,如果没有,可以考虑用排名函数 OR ROWID
      

  2.   

    没明白你的意思,用rownum不行么?select * from (select rownum,t.* from table t) where rownum>=20000 and rownum<=40000自己做个循环
      

  3.   

    就是SQL分页吧? 楼上的那个 用rownum
      

  4.   

    select 批次 from 表 where rownum<=10000
    union all
    select 批次 from 表 where rownum>=20000 and rownum<=40000;
      

  5.   


    where 后面的 rownum可以这样写吗, 要对T 里面的取个别名吧,
      

  6.   

    select XX from 表 where rownum<=10000;
    select XX from 表 where rownum>=20000 and rownum<=40000;
      

  7.   

    select *
      from (select t.*, rownum rn from t order by rowid) t1
     where t1.rn between 1 and 2000;  --第1条到第2000条