JAVA调用Oracle分页SQL用法

转载 2015年07月08日 15:23:54

1.第一种写法

select *from (

selectrownum rm,a.* from (

   selectxs.xh,xs.xbm,cf.xm,cf.qfr,cf.qfrq from cfxxb cf,xsjbxxb xs 

       wherecf.xh=xs.xh and cf.cflx='警告'and cf.xm like '%%'

       orderby qfrq desc 

       

       )  a) where rm between 1 and 10

 

2.第二种写法

SELECT*    

FROM(    

SELECTROWNUM RN,TA.*    

FROM(   

   selectxs.xh,xs.xbm,cf.xm,cf.qfr,cf.qfrq 

       fromcfxxb cf,xsjbxxb xs where cf.xh=xs.xh and cf.cflx='警告' and cf.xm like '%%'

       orderby qfrq desc 

)TA WHEREROWNUM <= 10   

)WHERE RN> 1

 

3.总结

   

    第二种方法在大多数情况拥有较高的效率。分页的目的就是控制输出结果集大小,在上面的分页查询语句中,这种考虑主要体现在WHERE ROWNUM <= 20这句上。

 

    选择第1120条记录存在两种方法,第二种方法正是在查询的第二层通过ROWNUM <= 20来控制最大值,在查询的最外层控制最小值。而第一种方法是去掉查询第二层的WHEREROWNUM <= 20语句,在查询的最外层控制分页的最小值和最大值。 

 

    数据库管理员在优化的时候,第二种情况下优化效果更好。

 

来自 <http://blog.chinaunix.net/uid-122937-id-142970.html

Oracle分页查询sql语句

1.oracle中的分页查询sql语句基本可以按照如下的模板来改写:SELECT * FROM (SELECT A.*, ROWNUM RN FROM (SELECT * FR...
  • sinat_27535209
  • sinat_27535209
  • 2016年10月25日 14:43
  • 1479

JAVA 后台拼接分页查询SQL oracle/sqlserver/db2/达梦数据库通用

JAVA 后台拼接分页查询SQL
  • luoyongsir
  • luoyongsir
  • 2014年07月28日 11:20
  • 1745

一个非常好的ORACLE的分页SQL语句

 select * from (select my_table.*, rownum as my_rownum from ( select yhbh, yhmc from yysf_tb_yonghxx...
  • mxfhhh
  • mxfhhh
  • 2005年07月21日 08:52
  • 1413

Oracle SQL实现分页查询

Oracle SQL分页查询1、表结构SQL> desc test; 名称 是否为空? 类型 --------------------- -------- --...
  • u011532367
  • u011532367
  • 2015年12月03日 15:23
  • 2779

Oracle ROWNUM用法和分页查询总结

分页查询格式1 在查询的最外层控制分页的最小值和最大值。查询语句如下: SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABL...
  • fw0124
  • fw0124
  • 2015年01月15日 13:56
  • 108031

Oracle中的SQL分页查询原理和方法详解

转载请注明出处:http://blog.csdn.net/anxpp/article/details/51534006,谢谢!     本文分析并介绍Oracle中的分页查找的方法。     Or...
  • anxpp
  • anxpp
  • 2016年05月29日 21:26
  • 31101

oracle一个比较完整的分页工具类Page

package com.thams.bianYan;import java.io.Serializable;import java.util.ArrayList;public class Page i...
  • thamsyangsw
  • thamsyangsw
  • 2009年05月06日 13:58
  • 1844

SQLSERVER 使用row_number()分页的sql

--主键 Server_no --主体sql select row_number()over(order by Server_no desc) as rownum,Server_no,Game_N...
  • zhang6622056
  • zhang6622056
  • 2012年03月30日 11:50
  • 2582

oracle高性能的通用分页sql--------高性能的通用sql(收集)

SELECT *   FROM (SELECT ROWNUM AS rowno, t.*           FROM emp t          WHERE hire_date BETWEE...
  • wenzhihui_2010
  • wenzhihui_2010
  • 2013年11月11日 16:59
  • 963

java 调用存储过程实现分页 sql server 2012 版

存储过程:(sql语句中必须有order by  仅支持2012)USE [stww] GO /****** Object: StoredProcedure [dbo].[SplitPage] ...
  • z69183787
  • z69183787
  • 2013年11月29日 16:23
  • 1562
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA调用Oracle分页SQL用法
举报原因:
原因补充:

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