我在做什么: 我有一个SQL表中有5列和数千行的记录。 这些行共享重复的数据(即帐号),但每个行的唯一之处在于其中一列中的数据不同。SQL - 将多行与多行组合成一行
举个例子:
col1|col2|col3|col4|col5
------------------------
123|abc|456|def|789
123|abc|456|def|date
但列可以有不同的价值观,不一定总是在第5列
这里是我开始:
SELECT TOP (15) stuff((
SELECT ', ' + te.[accountid]
,te.[char1]
,te.[date]
,te.[date2]
,te.[char2]
FROM D AS te
INNER JOIN D AS tue ON tue.[accountid] = te.[accountid]
WHERE tue.[accountid] = ue.[accountid]
FOR XML path('')
,type
).value('.', 'varchar(max)'), 1, 2, '') AS ifile
FROM D AS ue
GROUP BY ue.[accountid]
但我得到一个包含一列中重复行的怪物长字符串。我不知道还有什么可以尝试,所以任何洞察力将不胜感激。
你想要的输出是什么? –
期望的输出是: 123 | abc | 456 | def | 789 | date – jmc