zoukankan      html  css  js  c++  java
  • sum over使用方法,以及与group by的差别

    1、sum over使用方法

    sum(col1) over(partition by col2 order by col3 )

    以上的函数能够理解为:按col2 进行分组(partition ),每组以col3 进行排序(order),并进行连续加总(sum)

    表a,内容例如以下:  
     B   C  D  
    02 02 1  
    02 03 2  
    02 04 3  
    02 05 4  
    02 01 5  
    02 06 6  
    02 07 7  
    02 03 5  
    02 02 12  
    02 01 2  
    02 01 23  

    运行:SELECT   b,   c,   d,   SUM(d)   OVER(PARTITION   BY   b,c   ORDER   BY   d)   e   FROM   a  

    得到结果:

    B   C   E  
    02 01 2  
    02 01 7  
    02 01 30  
    02 02 1  
    02 02 13  
    02 03 2  
    02 03 7  
    02 04 3  
    02 05 4  
    02 06 6  
    02 07 7  

    能够看到,E列的值是累加和。



    2、与group by 的差别

    相同的a表:select   b,c,sum(d)   e   from   a   group   by   b,c  

    B   C   E  
    02 01 30  
    02 02 13  
    02 03 7  
    02 04 3  
    02 05 4  
    02 06 6  
    02 07 7

    差别非常明显。

  • 相关阅读:
    Android进程启动
    Android 系统Framework
    每日一问 AIDL
    Android性能优化
    Android启动优化
    Android绘制优化
    Android布局优化三剑客#
    android性能优化全方面解析(一)
    Android网络
    Android四大组件
  • 原文地址:https://www.cnblogs.com/gccbuaa/p/6847225.html
Copyright © 2011-2022 走看看