oracle之分页查询

1.为什么要做分页查询

1.1数据量太大,一次取出没有实际业务意义
1.2 数据量太大,一次取出不够安全

2.oracle的隐藏列

2.1 rowid

select t.*,t.rowid from stu t;


rowid物理存在,必唯一。
2.2 rownum

分页查询

select t.*,rownum from stu t;


rownum逻辑存在。

造数据

begin
for i in 1..100
loop

insert into stu(id,name,age,sex)values(seq_test.nextval,'李'||i,i,'男');

end loop;
commit;
end;

分页查询数据

select t.*,rownum from stu t where rownum>0 and rownum<10;

-- 第二页数据
select * from (select t.*,rownum rn from stu t) s where s.rn>21 and s.rn<30;

posted @ 2022-09-09 00:21  King-DA  阅读(116)  评论(0)    收藏  举报