oracle函数介绍第四篇非著名函数之聚合函数

oracle函数介绍第四篇非著名函数之聚合函数

ID:47201037

大小:60.86 KB

页数:4页

时间:2019-08-23

oracle函数介绍第四篇非著名函数之聚合函数_第1页
oracle函数介绍第四篇非著名函数之聚合函数_第2页
oracle函数介绍第四篇非著名函数之聚合函数_第3页
oracle函数介绍第四篇非著名函数之聚合函数_第4页
资源描述:

《oracle函数介绍第四篇非著名函数之聚合函数》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、ORACLE函数介绍第四篇非著名函数之聚合函数2007.8.23注:N表示数字型,C表示字符型,D表示日期型,[]表示内中参数可被忽略,fmt表示格式。聚合函数可被用于select,orderby以及having子句中。其运算可以基于groupby的结果,也可以直接对所有记录进行运算。当然,这种类型语句相信大家平常也用的比较多,概念性的就不多介绍了,有一点需要注意的是,除了count和grouping之后,其它的统计运算均会忽略值为null的列。注意,多数聚合函数都支持DISTINCT子句(distinct是什么?过滤记录集中重复记录用的),如果不指定则默认针对所有计录,举个最

2、简单的例子:selectcount(col),count(distinctcol)fromtmplo本类函数中部分函数同时也属于分析函数。其做为分析函数时的具体用法将会在后面章节介绍,本节不做描述。1、CUME_DIST(expr[,expr]...)WITHINGROUP(ORDERBYexpr[DESC

3、ASC][NULLS{FIRST

4、LAST}1[,expr[DESC

5、ASC][NULLS{FIRST

6、LAST}]]…)非常有意思的一个函数。查询指定数值在指定分组序列中的相对位置,返回值是介于0和1之间的小数值。我们后面还会再讲几个相关的函数,均是实现类型功能,只是值的

7、表现形式不同。例如:SELECTCUME_DIST(120)WITHINGROUP(ORDERBYvalue)FROMTMP12、GROUP_ID()该函数必须趾合groupby子句使用。主要是用来区分groupby生成的记录集中是否是被重复生成的记录,如果该条记录是则返回1,否则返回0。例如:SELECTt・colzgroup_id()FROMTMP1tGROUPBYcolzROLLUP(col)3、PERCENT_RANK(expr[,expr]...)WITHINGROUP(ORDERBYexpr[DESC

8、ASC][NULLS{FIRST

9、LAST}]L,expr[DE

10、SC

11、ASC][NULLS{FIRST

12、LAST}]].・・)本函数语法及形式与cume.dist非常相似,也是返回指定数据在指定分组序列中所占的相对位置,不过与cume.dist不同的是。不管指定值与分组序列中某值是否重复,均将此值视为序列一部分,而cume.dist则不同。如果指定值与分组序列屮某值重复,则将二值视为一个值处理(上帝保佑,但愿俺讲明白了,废话不说,大家通过示例来理解吧)。例女口:SELECTPERCENT_RANK(120)WITHINGROUP(ORDERBYvalue)FROMTMP14、PERCENTILE_CONT(n)WITHINGROUP(ORD

13、ERBYcol[DESC

14、ASC])根据输入值返回该值对应的分组序列屮数值。输入值应该是介于0到1Z间。原因请参照前面的PERCENT_RANK函数。如果分组序列中没有存在对应值的话,会根据如下规则来计算返冋值:if(CRN=FRN=RN)then(valueofexpressionfromrowatRN)else(CRN-RN)*(valueofexpressionforrowatFRN)+(RN・FRN)*(valueofexpressionforrowatCRN)例如:SELECTcol,max(value),min(value)rsum(value)rPERCENTIL

15、E_CONT(0.5)WITHINGROUP(ORDERBYvalue)a,PERCENTILE_CONT(0.8)WITHINGROUP(ORDERBYvalue)bFROMTMP1groupbycol;5、PERCENTILE_DISC(n)WITHINGROUP(ORDERBYcol[DESC

16、ASC])语法与形式与上例相同,不过在计算方法上略有差异。如果分组序列中没有对应值的话,那么将会返回该序列中最近最大的一个值。相对而言,我认为某些情况下本函数被应用的机率还是相当大地,起码比上述几个函数的应用范围会广。例如:SELECTcolzmax(value)/min(valu

17、e),PERCENTILE_DISC(0・5)WITHINGROUP(ORDERBYvalue)a,PERCENTILE_DISC(0・8)WITHINGROUP(ORDERBYvalue)bFROMTMP1groupbycol;6、STDDEV([DISTINCT

18、ALL]n)该函数返回样本的标准偏差。例女口:SELECTcol,STDDEV(value)FROMTMP1GROUPBYcol;7、STDDEV_SAMP(n)语法与形式与上同,其与STDDEV函数最大的区别是,如果该分组序列

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。