SQLServer数据库表中将指定列分组转一行
不说明,直接看代码:
--1. 创建表,添加测试数据
CREATE TABLE #test(code varchar(50), [values] varchar(10))
INSERT #test SELECT '001', 'aa'
UNION ALL SELECT '001', 'bb'
UNION ALL SELECT '002', 'aaa'
UNION ALL SELECT '002', 'bbb'
UNION ALL SELECT '002', 'ccc'
---2 查询SELECT code, data=STUFF((SELECT ','+[values] FROM #test t WHERE code=t1.code FOR XML PATH('')), 1, 1, '')
FROM #test t1
GROUP BY code
---3删除临时表
drop table #test