日期:2014-05-16  浏览次数:20512 次

Oracle分析函数使用总结 转

Oracle 分析函数使用总结

1. ?????? 使用评级函数

评级函数( ranking function )用 于计算等级、百分点、 n 分片等等,下面是几个常用到的评级函数:

RANK ():返回数据项在分组中的排名。特点:在排名相等的情况下会在 名次中留下空位

DENSE_RANK(): RANK 不同的是它在排名相等的情况下不会在名次中留下空位

CUME_DIST() :返回特定值相对于一组值的位置:他是“ cumulative distribution ( 累积分布 ) 的简写

PERCENT_RANK() :返回某个值相对于一组值的百分比排名

NTILE(): 返回 n 分片后的值,比如三分片、四分片等等

ROW_NUMBER(): 为每一条分组纪录返回一个数字

下面我们分别举例来说明这些函数的使用

1 RANK ()与 DENSE-RANK ()

首先显示下我们的源表数据的结构及部分数据:

SQL> desc all_sales;

? 名称 ????????????????????????????????????? 是否为 空 ? 类 型

<