初学oracle,怎样写一个oracle分页sql语句
创建了一个类,pageinfo4个属性:curpage,pagecount,previouspage,nextpage实现,上一页,下一页,首页,尾页,sql语句怎么写...
创建了一个类,pageinfo 4个属性:curpage,pagecount,previouspage,nextpage实现,上一页,下一页,首页,尾页,sql语句怎么写
展开
3个回答
展开全部
通过rownum来控制分页,下面是sql语句:
select * from ( select row_.*, rownum rownum_ from (
select * from 表名 (where条件略)
) row_ where 最大行数 >= rownum )
where rownum_ > 最小行数
通过这条语句你可以看到,sql语句、最大行、最小行
1. sql控制要通过什么样的条件,来筛选出符合条件记录,不多说了
2. 最大行数:你自己要计算的
3. 最小行数:也是你要计算的
比如:有150条记录,每页15条,通过计算共分为10页。
第1页:最小行数:(1-1)*10
最大行数:1*10;
第2页:最小行数:(2-1)*10
最大行数:2*10
。。。。
第n页:最小行数(n-1)*10
最大行数n*10
------------------------------------
仅供参考,不足之处,请多指教!
select * from ( select row_.*, rownum rownum_ from (
select * from 表名 (where条件略)
) row_ where 最大行数 >= rownum )
where rownum_ > 最小行数
通过这条语句你可以看到,sql语句、最大行、最小行
1. sql控制要通过什么样的条件,来筛选出符合条件记录,不多说了
2. 最大行数:你自己要计算的
3. 最小行数:也是你要计算的
比如:有150条记录,每页15条,通过计算共分为10页。
第1页:最小行数:(1-1)*10
最大行数:1*10;
第2页:最小行数:(2-1)*10
最大行数:2*10
。。。。
第n页:最小行数(n-1)*10
最大行数n*10
------------------------------------
仅供参考,不足之处,请多指教!
展开全部
这种sql网上可以找到很多,给你举个例子:
select * from (select e.* ,rownum rn from (select * from emp) e) where rn>=5 and rn<=15;
其中rn用来指定行号。后面的5和15,可以从前台以入参形式传入,用来指定查询的范围。
希望对你有帮助。
select * from (select e.* ,rownum rn from (select * from emp) e) where rn>=5 and rn<=15;
其中rn用来指定行号。后面的5和15,可以从前台以入参形式传入,用来指定查询的范围。
希望对你有帮助。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给楼主点儿提示:假设一页显示10条,
首页:select * from (select t.*,t.rownum as rn from table) t2 where t2.rn <=10;
尾页:select * from (select t.*,t.rownum as rn from table) t2 where t2.rn >=(select trunc(count(1)/10)*10 from table);
其他的楼主自己动脑筋想一想吧。
首页:select * from (select t.*,t.rownum as rn from table) t2 where t2.rn <=10;
尾页:select * from (select t.*,t.rownum as rn from table) t2 where t2.rn >=(select trunc(count(1)/10)*10 from table);
其他的楼主自己动脑筋想一想吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |