分页场景在现实生活中很常见,所以我们需要懂得如何利用sql语句实现数据的分页检索。
步骤一:创建测试表
create table test (datetime date,str varchar2(32))
/
步骤二:插入测试数据
declare
v1 date:=to_date('20160801010000','yyyymmddhh24miss');
begin
for i in 1 .. 30 loop
insert into test values (v1,'hello');
v1:=v1+1/1440;
end loop;
commit;
end;
/
步骤三:编写sql语句实现分页(核心)(假设一页显示3条数据)
1.显示1~3条数据
select t2.*
from (
select t1.*,rownum rowindex from
(select * from test order by datetime asc) t1
) t2 where t2.rowindex>=1 and t2.rowindex<=(1+3-1)
/
2.显示4~6条数据
select t2.*
from (
select t1.*,rownum rowindex from
(select * from test order by datetime asc) t1
) t2 where t2.rowindex>=4 and t2.rowindex<=(4+3-1)
/
3.显示M~(M+3-1)条数据
select t2.* from ( select t1.*,rownum rowindex from (select * from test order by datetime asc) t1 ) t2 where t2.rowindex>=M and t2.rowindex<=(M+3-1) /
原文地址:https://www.jb51.cc/oracle/213162.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。