mssql sqlserver sql脚本对数据表所有行和列值求和的方法分享


摘要:
下文讲述sqlserver中对数据表的行和列都进行求和的方法分享,如下所示:
实验环境:sql server 2008 R2


在日常的sql脚本编写中,我们经常遇见需要对一个数据表进行横向和纵向都进行求和的操作,下文将采用举例的方式讲述如何对行列进行求和的方法。

实现思路:
使用sum对列进行横向求和,
使用union all将纵向求和的结果进行组合起来,达到横向和纵向求和的目的。

create table [maomao365.com]
(keyId int identity,info nvarchar(20) not null,
qty1 int not null,qty2 int not null,qty3 int not null )
go
---生成基础数据-----
insert into [maomao365.com]
(info,qty1,qty2,qty3)
values
(N'sqlBlog',1,2,3),
(N'sql爱好者',3,8,9),
(N'猫猫小屋',11,28,39),
(N'sqlserver技巧站',16,22,32)


/*先更行横向求和*/
select keyId,info,qty1,qty2,qty3,
(qty1+qty2+qty3) as qtyAll from [maomao365.com]
/*组合结果*/
union all
/*纵向求和*/
select '','',sum(qty1),sum(qty2),sum(qty3),
sum(qty1+qty2+qty3) as qtyAll from [maomao365.com]

go
truncate table [maomao365.com]
drop     table [maomao365.com]

mssql_sqlserver_行列求和_9553

mssql_sqlserver_行列求和_9553


相关阅读:
多列数据进行求和sum计算
数据和sum结果一起
sum使用if进行按条件汇总
sum函数计算后的结果中包含null的处理方法
sum计算个数的例子分享
sum求和函数简介
sum(1)、count(*) 效率对比分析
sum(1)、sum(2)、count(1)、count(8)、count(*)、统计函数应用区别简介
数据库中sum和count用法区别说明