select * from Test
union
select 5, '合计' , SUM(C) , SUM(D) from Test
其中:先把表中的所有数据查询出来,然后按照表的结构,select 主键列,'合计',SUM(C),SUM(D) from 数据表 使用SQL的数学函数 动态添加一行数据,最后使用 union 关键字 连接两次查询的结果。
有个思路:
1、在系统表中找出表名对应的列名,并把每个列名都加上SUM()
select 'sum('+name+'),' from syscolumns
where id=(select id from sysobjects where name='表名')
2、把查询结果复制出来,前面加select 后面加 from 表名。。。。你懂的
注意:复制出来后把最后一个逗号去掉。
3、执行查询
也可以写个存储过程来完成。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)