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

Oracle 分析函数


   分析函数是oracle816引入的一个全新的概念,为我们分析数据提供了一种简单高效的处理方式.在分析函数出现以前,我们必须使用自联查询,子查询或者内联视图,甚至复杂的存储过程实现的语句,现在只要一条简单的sql语句就可以实现了,而且在执行效率方面也有相当大的提高.
下面主要介绍一下以下几个函数的使用方法
1.   Over() 开窗函数
2.    Nvl()函数
3.  Rollup,Cube自动汇总函数
4.  Rank,Dense_rank,Row_number函数
5.  Lag , Lead函数
6.  Sum,Avg, Count, Max函数
7.  Ratio_to_report报表处理函数
8.  First,Last,First_value,Last_value取基数的分析函数
9.   Greatest, Least 函数
10.  Trunc, Round,Decode, Substr函数
一. Over() 开窗函数
Over() 开窗函数是Oracle的分析函数,其语法如下:
函数名([ 参数 ]) over( [ 分区子句 ] [ 排序子句 [ 滑动窗口子句 ] ])
分区子句类似于聚组函数所需要的group by,排序子句可看成是SQL语句中的order by,只不过在此语句中还可指定null值排前(nulls first)还是排后(nulls last)。
开窗函数指定了分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变化而变化,举例如下:
over(order by salary) 按照salary排序进行累计,order by是个默认的开窗函数
over(partition by deptno)按照部门分区
over(order by salary range between 50 preceding and 150 following)
每行对应的数据窗口是之前行幅度值不超过50,之后行幅度值不超过150
over(order by salary rows between 50 preceding and 150 following)
每行对应的数据窗口是之前50行,之后150行
over(order by salary rows between unbounded preceding and unbounded following)
每行对应的数据窗口是从第一行到最后一行,等效:
over(order by salary range between unbounded preceding&n


相关文档:

SQL优化过程中常见Oracle HINT的用法

 在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法:
1. /*+ALL_ROWS*/
表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.
例如:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT';
2. /*+FIRST_ROWS*/
表 ......

oracle 存储过程和函数学习笔记

oracle 存储过程和函数学习笔记
1、创建过程的语法:     
Code
create [or replace] procedure procedure_name
  [(argument[{in|out|in out}] type,
    
   argument[{in|out|in out}] type)]&n ......

卸载oracle的步骤(笔记)

今天重新整理电脑,找到一个文件,看了下日期(2006.11.3) ,怕不小心再丢了,存到网上来晒晒。
1.HKEY_LOCAL_MACHINE
  HKEY_LOCAL_MACHINE
  SOFTWARE
  ORACLE
2.HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services
3.重新启动机器.
create role  a  identified  by passwor ......

Oracle入门书籍推荐《转》

Oracle入门书籍推荐
链接:http://www.eygle.com/archives/2006/08/oracle_fundbook_recommand.html
很多朋友要我帮忙推荐一下Oracle的入门书籍,能够了解Oracle的基本概念、基本知识的那种。
我就免为其难,推荐几本。
首先我想强调的一点是,任何一本系统的Oracle书籍只要认真读下来,都会有不错的收获,读书最忌讳的 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号