SQL 如何实现两行记录合并

img

想实现按原表中的前面两个列相同时,把第三个列求和,第四个列 合并

select SCDDCP_LYLSBH,SCDDCP_LYFLBH,sum(JHSL) as JHSL
, XSTD=(select XSTD+',' from a as a2
where a2.SCDDCP_LYFLBH=a1.SCDDCP_LYFLBH and a2.SCDDCP_LYFLBH=a1.SCDDCP_LYFLBH for xml path(''))
from a as a1
group by SCDDCP_LYLSBH,SCDDCP_LYFLBH

img

根据第一、二列分组,第三列求和,第四列合并。

select 字段1,字段2,sum(字段3),GROUP_CONCAT(字段4 SEPARATOR ',') 字段4
from 
表名
group by 字段1,字段2

如果是 sql server ,可以用 group 完成第三列求和,cross apply + for xml 完成第四列合并