在SQL Server中,我使用STUFF,XML功能来使用串联字符串的这一特性。在这个过程之后,我必须更新记录的最后一个元素。
我的表格如下:
id category
-------------
1 Pop
1 Rock
2 Pop
3 Rock
相同的ID类别应附加|
分隔符
Pop|Rock| as Pop|Rock
这就是我想要的方式。但是Stuff
和XML正在扼杀我的表现。
任何帮助都将不胜感激。
答案 0 :(得分:1)
你的查询看起来像这样吗?
select id,
stuff((select '|' + category
from table t2
where t2.id = t.id
for xml path ('')
), 1, 1, '') as categories
from (select distinct id from table t) t;
如果您不使用此方法,SQL Server中还有其他方法,但我认为它们会有更糟糕的性能。