首页 > 编程知识 正文

sql sum条件求和,sql用sum求总和

时间:2023-05-05 17:27:35 阅读:22243 作者:673

窗口函数是使用SQL查询和分析数据时常用的函数,其基本语法如下:

窗口函数over(partitionby组的列名order by排序的列名)。

其中窗口函数为专用窗口函数聚合函数。

专用窗口函数有row_number (,rank )、dense_rank )等,很常用,但这里不太介绍。

此外,将聚合函数max ()、min ()、sum ()、count ()等用作窗口函数时,请注意以下事项:

(1)必须为聚合函数指定聚合的列名。

)2)如果聚合函数仅使用partition by而不使用order by,则聚合函数的计算按每个分区用所有数字进行计算;

)3)同时使用partition by和order by时,聚合函数的计算按行重叠。

以下员工薪金表Employee和sum (以函数为例:

idcompanySalary 1a 23412 a 3413 a 154 a 135 b 3516 b44 select id、company、salary、Sum(Salary ) over(partitionbycompany ) asallSalarary

很明显,idcompanysalaryallsalary 1a 234127102 a 34127103 a 1527104 a 1327105 b 3513956 b 44395在使用group by后对每个组进行sum计算,但在同一组中

选择id、Company、Salary、Sum(Salary ) over(partitionbycompany,order by Id ) as AccSalary from Employee此结果如下:

idcompanysalaryaccsalry 1a 234123412 a 34126823 a 1526974 a 1327105 b 3513516 b 44395计算此行中的上一个数据的聚合。 该计算方法适用于统计累积数据分析。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。