sql如何列统计求和?

 我来答
小周爱唠叨
高粉答主

推荐于2019-10-07 · 说的都是干货,快来关注
知道小有建树答主
回答量:966
采纳率:100%
帮助的人:33.4万
展开全部

有个思路:
1、在系统表中找出表名对应的列名,并把每个列名都加上SUM()

select 'sum('+name+'),' from syscolumns
where id=(select id from sysobjects where name='表名')
2、把查询结果复制出来,前面加select 后面加 from 表名。。。。你懂的
注意:复制出来后把最后一个逗号去掉。
3、执行查询

也可以写个存储过程来完成。

百度网友a800768
2018-03-28 · TA获得超过1841个赞
知道大有可为答主
回答量:1928
采纳率:0%
帮助的人:1727万
展开全部
有个思路:
1、在系统表中找出表名对应的列名,并把每个列名都加上SUM()

select 'sum('+name+'),' from syscolumns
where id=(select id from sysobjects where name='表名')
2、把查询结果复制出来,前面加select 后面加 from 表名。。。。你懂的
注意:复制出来后把最后一个逗号去掉。
3、执行查询

也可以写个存储过程来完成
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chen_hongyang
2018-01-25 · TA获得超过5447个赞
知道大有可为答主
回答量:2790
采纳率:91%
帮助的人:867万
展开全部
可以使用存储过程做,由于字段有200个,需要使用存储过程枚举出每个字段,再查询
你可以建一个存储过程
USE 数据库
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create PROCEDURE [dbo].存储过程名称
AS
BEGIN
DECLARE @n int
DECLARE @字段名称 varchar
DECLARE @列和 varchar
SET @n = 1
SET @字段名称 = ''
WHILE @n < 201
begin

select @字段名称=name from syscolumns where id=object_id('表名') and colid=@n
---枚举字段名称

select @列和 = sum(@字段名称) from 表

set @列和 = '第'+@n+'列的和是:'+@列和+','
set @n = @n +1

end

最后输出的结果是 第1列的和是:, 第2列的和是:,......
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式