sql 纵向求和_sql列统计求和

展开全部

可以完成:首先拼接成字e5a48de588b662616964757a686964616f31333332626665符串sum(id),sum(name),sum(type) 形式

通过动态执行sql Exce('sql') 来执行就可以了.

案例如下:SELECT * from Tab

DECLARE @str varchar(500)

--得到tab表下的所有列 拼接成字符串sum(id),sum(name),sum(type) 形式

--过滤当前表 和类型为int的 where TABLE_NAME='tab' AND DATA_TYPE='int'

--INFORMATION_SCHEMA此视图可以检索存储在数据库中的数据对象的元数据

SELECT @str=STUFF(

(SELECT ',sum('+COLUMN_NAME+')'+COLUMN_NAME+'sum' from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='tab' AND DATA_TYPE='int' FOR XML PATH(''))

,1,1,'')

--用动态执行sql语句执行

EXEC('select '+@str+' from tab')

得到表tab所有的DateType属于int的列

效果图如下:

希望能帮到你!

本文链接:https://my.lmcjl.com/post/14990.html

展开阅读全文

4 评论

留下您的评论.