| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 488 人关注过本帖
标题:求助sql关于sum大量列的问题
只看楼主 加入收藏
kamishiro
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2013-3-21
结帖率:50%
收藏
 问题点数:0 回复次数:1 
求助sql关于sum大量列的问题
比如一列index,其余比如有上百column的数据,然后我要对这些column进行相同的index进行加总,如果列少,我直接可以:
select index, sum(c1) c1, sum(c2) c2,sum(c3) c3 from data group by index
但column有上百个 我总不可能一个个c1 c2....c100这样列出来吧,有什么好办法吗?
2013-11-09 12:32
mxbing1984
Rank: 7Rank: 7Rank: 7
来 自:贵州道真
等 级:贵宾
威 望:37
帖 子:73
专家分:342
注 册:2014-8-8
收藏
得分:0 
Declare @sql Varchar(8000)
Set @sql='Select index,'
Select @sql=@sql+'sum('+name+') As '+name+',' From sys.columns
    Where object_id=object_id('data')
        And name like 'c%'
Set @sql=STUFF(@sql,LEN(@sql),1,'')+' From data Group By index'
Exec(@sql)
--把data表所有c开头的栏位,组成一个sum的字符串,然后执行

天再高,踮起脚尖就能更接近阳光
2014-08-08 14:14
快速回复:求助sql关于sum大量列的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032915 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved