初学oracle,怎样写一个oracle分页sql语句

创建了一个类,pageinfo4个属性:curpage,pagecount,previouspage,nextpage实现,上一页,下一页,首页,尾页,sql语句怎么写... 创建了一个类,pageinfo 4个属性:curpage,pagecount,previouspage,nextpage实现,上一页,下一页,首页,尾页,sql语句怎么写 展开
 我来答
品怀缘
2012-07-16 · TA获得超过776个赞
知道小有建树答主
回答量:862
采纳率:100%
帮助的人:647万
展开全部
通过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

------------------------------------
仅供参考,不足之处,请多指教!
流浪云风
推荐于2018-03-12 · TA获得超过4315个赞
知道大有可为答主
回答量:1119
采纳率:69%
帮助的人:936万
展开全部
这种sql网上可以找到很多,给你举个例子:
select * from (select e.* ,rownum rn from (select * from emp) e) where rn>=5 and rn<=15;
其中rn用来指定行号。后面的5和15,可以从前台以入参形式传入,用来指定查询的范围。

希望对你有帮助。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
raymonshi
2012-07-16 · TA获得超过490个赞
知道小有建树答主
回答量:416
采纳率:100%
帮助的人:248万
展开全部
给楼主点儿提示:假设一页显示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);
其他的楼主自己动脑筋想一想吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式