ORACLE 的 OVER 函数使用技巧
ORACLE 的 OVER 作 为 窗 口 函 数 大 家 一 定 都 不 陌 生 , 我 们 最 常 用 的 就 有
ROW_NUMBER()OVER() 用 于 做 排 名 的 序 号 。 除 了 ROW_NUMBER 以 外 , 还 有
RANK()、DENSE_RANK()、SUM()、COUNT()、AVG()、MAX()、MIN()、FIRS
T_VALUE()、STDDEV()等。
OVER 函数一般搭配 PARTITION BY 和 ORDER BY 关键字联合使用,部分函数
搭配起来可以达到意想不到的效果,如 SUM()OVER(order by xx)可以起到累加的效果。
以下表的数据做一些实例。
日期 品牌 用户数
201101
01 1 12
201101
02 1 28
201101
03 1 51
201101
01 2 13
201101
02 2 28
201101
03 2 96
201101
01 3 12
201101
02 3 85
201101
03 3 85
建表:
create table quanc.tw_over_test(
tm_intrvl_cd number(10),
brnd_cd number(5),
usr_cnt number(10));
评论0