在oracle中实现分页处理 oracle 分页查询

于7月25日

select * from tshop_companys where company_idin
( select company_id from
(
select rownum rn,company_id from
(select * from tshop_companys where company_type_id = <%=??%> order by company_id)
)
where rn >=startand rn <=endorder by company_id);


假设:我有10条记录 totalConut =10
单页显示记录数为 pageSize = 3
总页数为 pageCount =totalConut/pageSize+1

描述当前页码 pageNum 默认为1

最内部的查询语句:select * from tshop_companys wherecompany_type_id = <%=??%> order by company_id
根据条件company_type_id 查处所有的信息,即结果1
那么 它的外层查询语句就根据结果1,执行查询

select rownum rn,company_id from (结果1) 取的 rownumrn,company_id(结果2)


再外层 select company_id from
(
结果2

)
where rn >= start and rn <= end order by company_id);


根具rownum表示单前结果集的数目的索引 从1开始,

作判断
if(pageNum>0)
{
// 总是先显示第一页;
if(pageNum==1)
{
在oracle中实现分页处理 oracle 分页查询
start = 1;
end =pageNum*pageSize;

temp_pageNum = pageNum;
}


//如果选择显示下一页 比如pageNum=2;
if(pageNum>1&&temp_pageNum<pageNum)
{

start = (pageNum-1)*pageSize+1
end =pageNum*pageSize;

temp_pageNum = pageNum; // 这时temp_pageNum =2 ;

}

//如果选择显示上一页 此时start=4 end = 6
if(temp_pageNum!=1&&temp_pageNum>pageNum)
{
start= start-pageSize;
end =start-1;
}


}


注意:rownum为ORACLE特有的字段,每一条sql语句只能出现一次,嵌套查询时,可以使用别名。

  

爱华网本文地址 » http://www.413yy.cn/a/25101015/251474.html

更多阅读

Word2010中插入分页符的两种方法 word2010分页符

我们在使用Word2010编辑文档的过程中,有时需要在页面中插入分页符,以便于更灵活地设置页面格式。本篇经验介绍一下插入分页符的两种方法。Word2010中插入分页符的两种方法——工具/原料Word 2010Word2010中插入分页符的两种方法——

WPF中实现PropertyGrid的三种方式 wpf propertygrid

WPF中实现PropertyGrid的三种方式由于WPF中没有提供PropertyGrid控件,有些业务需要此类的控件。这篇文章介绍在WPF中实现PropertyGrid的三种方式,三种方式都是俺平时使用时总结出来的。第一种方式:使用WindowsForm的PropertyGrid控件。

在文章中插入不同页眉 word文档中不同的页眉

如果在Word文档中创建了页眉、页脚,那么在默认情况下,一篇文章从头到尾的页眉页脚都是一样的。但有时,我们还需要根据不同的章节内容而设定不同的页眉页脚。有的朋友将不同的章节分别保存成不同的文件,然后再分别给每个文件设定不同的页

在oracle中实现分页处理 oracle 分页查询

于7月25日select * from tshop_companys where company_idin( select company_id from(select rownum rn,company_id from(select * from tshop_companys where company_type_id = <%=??%> order by company_id))where rn >=sta

声明:《在oracle中实现分页处理 oracle 分页查询》为网友俗世的流离分享!如侵犯到您的合法权益请联系我们删除