实现oracle分页的sql语句

表的名字是dx_userpageSize是一页多少条纪录pageCount是有多少页rowCount是一共多少纪录pageNow是当前页谢谢各位... 表的名字是dx_user pageSize是一页多少条纪录 pageCount是有多少页 rowCount是一共多少纪录 pageNow是当前页 谢谢各位 展开
 我来答
無墨兮
2013-03-29 · 超过11用户采纳过TA的回答
知道答主
回答量:32
采纳率:0%
帮助的人:25.1万
展开全部
下面是用ORACLE数据库pl/sql编程实现的一个方式:
-------------------创建一个包--------------------------
create or replace package pages_query_pak as
type pages_cursor is ref cursor; --定一个游标,保存数据查询得到的结果集
end pages_query_pak;
------------------创建一个过程----------------------
create or replace procedure pages_pro(
tableName in varchar2,
pageSize in number,--每一页显示的记录数
pageNow in number,--显示第几页
myRows out number,--总记录数
pageCount out number,--总页数
page_cursor out pages_query_pak.pages_cursor--返回的记录集 这里有用了上面那个包
) is
v_sql varchar2(1000);
v_begin number:=(pageNow-1)*pageSize+1;
v_end number:=pageNow*pageSize;
begin
v_sql:='select * from (select bt.*,rownum rnum from (select * from '|| tableName ||')bt
where rownum<='||v_end||') where rnum>='||v_begin;
open page_cursor for v_sql;
--计算myRows和pageCount

v_sql:='select count(*) from '||tableName;
execute immediate v_sql into myRows;
if mod(myRows,pageSize)=0 then
pageCount:=myRows/pageSize;
else
pageCount:=myRows/pageSize+1;
end if;
end;
End灬琦琦
2013-03-29 · TA获得超过956个赞
知道小有建树答主
回答量:181
采纳率:0%
帮助的人:193万
展开全部
http://zhidao.baidu.com/question/212739485.html?oldq=1&from=evaluateTo#reply-box-592556619

这个是之前我很早回答的,很多人看着还有些帮助,希望也对你有所帮助~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式