网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.Oracle SQL内置函数大全(一).
.Oracle利用传输表空间导出导入数.
.Spring调用Oracle存储过程结果小.
.Oracle弱智900问七.
.了解Oracle Developer.
.Oracle数据库配置错误信息.
.创建一个Oracle 数据库.
.Oracle10g中过程(PROCEDURE )重建.
.VC++ Oracle 开发入门教程.
.数据库PL/SQL异常处理(组图).
.死联接检测(DCD).
.oracle-触发redo写的几个条件.
.oracle update多表关联.
.如何启动DataGuard的备用数据库.
.一个JAVA连接ORACLE的例子.
.Oracle 9i创建数据库.
.Oracle的一个内部工具block corr.
.Oracle 操作图片.
.数据库应用程序常见T-SQL和PL/SQL.
.关于使用RMAN进行clone数据库一.

oracle如何返回指定行数之间的查询结果

发表日期:2008-2-9


如何返回指定行数之间的查询结果,以实现web记录分页,在Oracle中有许多的方法,这里仅仅列出了4种,希望能对大家有所帮助,大家可以根据不同需要选择下面的script 
  
  1)select ... where rownum < 50 minus select ... where rownum < 30 
    这个方法因为用到了minus操作符,所以速度会受影响。 
  2) 
  SELECT results.* FROM 
  ( SELECT t2.*, rownum rownumber FROM 
  ( SELECT t.* FROM mv_table t WHERE ORDER BY col1) t2) results 
  WHERE results.rownumber BETWEEN 30 and 50 ORDER BY col1 
  这个方法是从一个论坛上看到的,没有亲自测试过 
  3) 
  定义cursor x, 2.fetch x a,b,c; loop ...... end loop; 
  其中用两个循环变量和一个FLAG变量,分别表示,当前的记录数,属于第几页的, 及第一页面。 
  ps; 
  j:=to_number(kafyf); 
  i:=1; 
  open cx; 
  loop fetch cx into col1,col2,col3,col4,col5,col6; 
  if cx%NOTFOUND then exit; end if; 
    if i>=j then 
  htp.tableRowOpen; 
  htp.tableData(col1); 
  htp.tableData(col2); 
  htp.tableData(col4); 
  htp.tableData(col5); 
  htp.tableData(col6); 
  htp.tableData(col3); 
  htp.tableRowClose; 
  i:=i+1; 
  if i=j+10 then l:=1; exit; end if; 
  else i:=i+1; 
  end if; 
  end loop; 
  close x; 
  该方法是名叫‘淼’的网友写的script,他用到了Oracle web2kit中的OWA_UTIL package。 
  
  4)How can one page forward and backwards through a table? 
  Externalize ROWNUM by implementing queries like this: 
  
  SELECT ... 
  FROM (SELECT ROWNUM rnum, ... FROM ...) 
  WHERE rnum BETWEEN :low AND :high AND rownum <(:high :low + 1); 
    where :low and :high are dynamically generated values depending on which result page the user 
  is viewing. Typically, they are used to show "Next 15 matches", "Previous 15 matches" links at the 
  bottom of each page. 
  
上一篇:数据库复制技术在Internet上的实现 人气:578
下一篇:导出Oracle里创建非唯一索引脚本的方法 人气:1116
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐