Oracle中使用SQL进行分页的语句、方法,简单易用,呵呵……

原创 2005年03月01日 15:43:00

     看了不少分页方面的文章,感觉还是直接使用SQL来的简单直接,就简单研究了一下……
不过,鄙人Oracle数据库方面的知识实在有限,有什么不对之处还请多多指教,效率嘛,不知道怎么测,俺只管好用就行了……
     小经验:
     select * from tablename where rownum>10 and rownum<20
     像这样的语句是不对的,oracle认为条件不成立,至于为什么这么弱智,俺也不知道……
     rownum只可以用<=来操作,不可以用>=
     select * from tablename where rownum<20
     minus
     select * from tablename where rownum<10
     这样也能达到分页的目的,不过不支持LONG字段,所以还是用下面的吧……
--------------------------------------------------------------------------------------
方法1,据说效率较高
select * from (select rownum idd,t.* from (select * from gsdtlongtest order by id desc) t
where rownum<20) tt where tt.idd>10

select * from (select rownum idd,t.* from (select * from gsdtlongtest order by id desc) t
where rownum<end) tt where tt.idd>start


curpage 当前页
pagenum 每页显示条数

start=(curpage-1)*pagenum
end=start+pagenum+1

最后一页如果不足pagenum无所谓
--------------------------------------------------------------------------------------
方法2(43条记录,每页20条,第2页):
select * from (select * from gsdtlongtest where rownum<=23)
where id not in(select id from gsdtlongtest where rownum<=3) order by id desc

select * from (select * from gsdtlongtest where rownum<=start)
where id not in(select id from gsdtlongtest where rownum<=end) order by id desc

 

start=total-(curpage-1)*pagenum
end=start-pagenum+1

注意:为了减少子查询数,直接按照默认的数据库记录顺序进行分页计算。主键id顺序增加,最新纪录为表中最后一条记录。效率不知道怎么样……

---------------------------------------------------------------------------------------

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

oracle使用rownum进行分页语句详解

oracle使用rownum进行分页语句详解 rownum和rowid是两种不同的东西,不知道你如何利用rowid来分页? rownum是返回的记录编号。rowid可理解为返回记录的实际地址。当根...

使用sql语句的两种分页方法

使用存储过程 1.使用top方法 --一条一条的访问数据库 Create procedure data_page @num int,--每页的信息数 @i int--接受是第几页 as declare...

简单易用兼容好的分页(改进)

效果: html: css: #page{ font-size: 14px; clear: both; padding-top: 1.45em; white-space: nowrap;...

Oracle+SQL+分页语句

oracle的 分页sql语句

  • 2011-11-27 19:13
  • 1.32MB
  • 下载

一款简单易用的分页插件jquery-sdpagination.js(17-02-09更新涉及Sass/Scss、皮肤)

简介近期将原有的生成分页导航的function整理成了一个独立的jQuery插件,使用更简单更方便了,使用插件时可以简单的传入一些参数来启用功能或者修改显示效果。效果如下图所示。插件结构是典型jQue...

ORACLE中用rownum分页并排序的SQL语句

ORACLE中用rownum分页并排序的SQL语句 以前分页习惯用这样的SQL语句: 1 2 3 select * from    (sel...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)