请教1个SQL语句怎么写我的需求是在ORACLE的一张表里面获取如第1条到第20000条数据,第20000条到第40000条记
请教1个SQL语句怎么写
我的需求是在ORACLE的一张表里面获取如第1条到第20000条数据,第20000条到第40000条记录,按批次把所要记录都打印出来
[最优解释]
select *
from (select t.*, rownum rn from t order by rowid) t1
where t1.rn between 1 and 2000; --第1条到第2000条
[其他解释]
查询1到20000行数据就行了吧 加个条件就行了 很简单 不知道什么意思
[其他解释]
表中有无唯一标识的字段,如果没有,可以考虑用排名函数 OR ROWID
[其他解释]
关键是表里没有标识,只能按照顺利来
[其他解释]
按照什么顺序
[其他解释]
用where就行了吧
[其他解释]
没明白你的意思,用rownum不行么?
select * from (select rownum,t.* from table t) where rownum>=20000 and rownum<=40000
自己做个循环
[其他解释]
就是SQL分页吧? 楼上的那个 用rownum
[其他解释]
select 批次 from 表 where rownum<=10000
union all
select 批次 from 表 where rownum>=20000 and rownum<=40000;
[其他解释]
用这个就可以,对啊
[其他解释]
where 后面的 rownum可以这样写吗, 要对T 里面的取个别名吧,
[其他解释]
select XX from 表 where rownum<=10000;
select XX from 表 where rownum>=20000 and rownum<=40000;
[其他解释]
是分页吗
、
[其他解释]
楼上的rownum就可以解决了
[其他解释]
12楼的rownum可以解决的吧
