sql server同一个表中两行数据合并为一行。如表A: name age num ab
sqlserver同一个表中两行数据合并为一行。如表A:nameagenumab11100cd11200ef11500合并后的表Aab11300ef11500说明:将表A...
sql server同一个表中两行数据合并为一行。如表A:
name age num
ab 11 100
cd 11 200
ef 11 500
合并后的表A
ab 11 300
ef 11 500
说明:将表A中字段名为ad和cd的两行合并,其中的num是两行num之和,合并后的行name字段名是cd. 展开
name age num
ab 11 100
cd 11 200
ef 11 500
合并后的表A
ab 11 300
ef 11 500
说明:将表A中字段名为ad和cd的两行合并,其中的num是两行num之和,合并后的行name字段名是cd. 展开
2个回答
展开全部
select name,age,sum(num)
from
(
select name=case when name='CD' then 'ab' else name end,age,num
from 表
) t1
group by name,age
from
(
select name=case when name='CD' then 'ab' else name end,age,num
from 表
) t1
group by name,age
更多追问追答
追问
您好,问下这个数据是更新了表吗,我的目的是更新后的数据存在表A.
追答
....以为你要查询,,,,要是更新的话就不能这样了,,,,
1、新增记录字段
alter table 表 add id varchar(100)
1、update 表 set name='ab',id='cd'
where name='cd'
2、update t1 set t1.num=t2.num
from 表 t1 inner join (select name,age,sum(num) num
from 表
group by name,age) t2 on t1.name=t2.name
where t1.name='ab'
3
DELETE FROM 表
where id='CD'
4
alter table 表 drop column id varchar(100)
哎,,,问题表述不请,,早知道打这么多字,,,就不回答了,,,
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询