我希望将表A转换为SQL Server 2012中的表B.
相同ID为Characters
列返回两个不同的值;一个是NULL,另一个是正确的值。如何从“字符”列中删除NULL值并将单个行中的其他数值相加?
表A :
ID Amount Character
---------------------------
1001 2000 NULL
1001 500 Delight
表B :
ID Amount Character
-----------------------------
1001 2500 Delight
感谢您的帮助
答案 0 :(得分:1)
对[字符]使用最大值:
Create table #TableA ([id] int, [Amount] int, [Character] nvarchar(20))
Insert into #TableA Values(1001, 2000, NULL)
Insert into #TableA Values(1001, 500 , 'Delight')
select [ID], Sum([Amount]), Max([Character])
from #TableA
Group by [ID]