oracle常用分析函数 over(partition by xxx order by xxx)

--over order by 连续累加的意思,把by后面相同的字段,一个组组累加起来
SELECT id_,name_,proc_def_id_, count(*) over(order by name_) FROM ACT_RU_TASK
--over partition by 分组统计 类似于group by,区别是它会列出重复的项,而group by只列出一条
SELECT id_,name_,proc_def_id_, count(*) over(partition by name_) FROM ACT_RU_TASK
--over order by partition by 联合使用,就是上面两功能的和,既然分组统计又累积(注意order by 需要放后面)
SELECT id_,name_,proc_def_id_, count(*) over(partition by name_ order by name_) FROM ACT_RU_TASK

 (当然over 的前面可以是sum ,min,max等 以下只列出count计算多少行)

原文地址:https://www.cnblogs.com/rdchen/p/10419109.html