明天的明天 永远的永远 未知的一切 我与你一起承担 ??

是非成败转头空 青山依旧在 几度夕阳红 。。。
  博客园  :: 首页  :: 管理

SQL:over partition by与group by 的区别

Posted on 2016-02-04 17:44  且行且思  阅读(1066)  评论(0编辑  收藏  举报

group by是对检索结果的保留行进行单纯分组,一般总爱和聚合函数一块用例如AVG(),COUNT(),max(),main()等一块用。 

partition by虽然也具有分组功能,但同时也具有其他的功能。 
它属于oracle的分析用函数。 
借用一个勤快人的数据说明一下: 

sum()   over   (PARTITION   BY   ...)   是一个分析函数。   他执行的效果跟普通的sum   ...group   by   ...不一样,它计算组中表达式的累积和,而不是简单的和。