易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle Top N 和 Oracle中的limit问题解决方案

oracle top N
1.在ORACLE中实现SELECT TOP N
   由于ORACLE不支持SELECT TOP语句,所以在ORACLE中经常是用ORDER BY跟ROWNUM的组合来实现SELECT TOP N的查询。
简单地说,实现方法如下所示:
      SELECT 列名1...列名n from
        (SELECT 列名1...列名n from 表名 ORDER BY 列名1...列名n)
       WHERE ROWNUM <= N(抽出记录数)
      ORDER BY ROWNUM ASC
   下面举个例子简单说明一下。
顾客表customer(id,name)有如下数据:
      ID NAME
       01 first
       02 Second
       03 third
       04 forth
       05 fifth
       06 sixth
       07 seventh
       08 eighth
       09 ninth
       10 tenth
       11 last
   则按NAME的字母顺抽出前三个顾客的SQL语句如下所示:
      SELECT * from
        (SELECT * from CUSTOMER ORDER BY NAME)
       WHERE ROWNUM <= 3
       ORDER BY ROWNUM ASC
   输出结果为:
      ID NAME
       08 eighth
       05 fifth
       01 first
2.在TOP N纪录中抽出第M(M <= N)条记录
在得到了TOP N的数据之后,为了抽出这N条记录中的第M条记录,我们可以考虑从ROWNUM着手。我们知道,ROWNUM是记录表中数据编号的一个隐藏子段,所以可以在得到TOP N条记录的时候同时抽出记录的ROWNUM,然后再从这N条记录中抽取记录编号为M的记录,即使我们希望得到的结果。
从上面的分析可以很容易得到下面的SQL语句。
 &nb


相关文档:

Oracle 中的 TO_DATE 和 TO_CHAR 函数

oracle 中 TO_DATE 函数的时间格式,以 2008-09-10 23:45:56 为例

格式
说明
显示值
备注

 
Year(年):
yy
two digits(两位年)
08
 
yyy
three digits(三位年)
008
 
yyyy
four digits(四位年)
2008
 
 
Month(月):
mm
number(两位月)
09
 
mon
abbre ......

ORACLE UNDO 《深入浅出ORACLE第七章》

如果说Redo是用来保证在故障时事务可以被恢复,那么Undo则是用来保证事务可以被回退或者撤销。
在修改操作中,对于回退段的操作存在多处,在事务开始时,首先需要在回滚段表空间获得一个事务槽,分配空间,然后创建前镜像,此后事务的修改才能进行,Oracle必须以此来保证事务是可以回退的。
如果用户提交了事务,Oracle会 ......

oracle函数详解

1、SQL 语句基础
下面给出SQL语句的基本介绍。
1.1、SQL语句所用符号
操作符 用途 例子
+ - 表示正数或负数,正数可省去 + -1234.56
+ 将两个数或表达式进行相加 A=c+b
- 将两个数或表达式进行相减 34-12
* 将两个数或表达式进行相乘 12*34
/ 除以一个数或表达式 18*11
NULL 空值判断 Where name is null; ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号