gpt4 book ai didi

sql-server - 使用回车换行符将多行合并为一列

转载 作者:行者123 更新时间:2023-12-02 10:06:50 25 4
gpt4 key购买 nike

下面的代码(我从 here 获得)很好地将多个字段合并在一起,并用逗号分隔它们。

select player,
stuff((SELECT distinct ', ' + cast(score as varchar(10))
FROM yourtable t2
where t2.player = t1.player
FOR XML PATH('')),1,1,'')
from yourtable t1
group by player

我需要用回车换行符替换逗号。我尝试了下面的代码,但它开始用这些字符分隔条目:“#x0D;”

select player,
stuff((SELECT distinct CHAR(13)+CHAR(10) + cast(score as varchar(10))
FROM yourtable t2
where t2.player = t1.player
FOR XML PATH('')),1,1,'')
from yourtable t1
group by player

我怀疑问题出在“FOR XML PATH('')),1,1,''”,但我不知道要输入什么值。

任何帮助将不胜感激。

谢谢!

最佳答案

您实际上可以替换 STUFF 结果上的逗号。

试试这个:

select player,
replace(stuff((SELECT distinct ', ' + cast(score as varchar(10))
FROM yourtable t2
where t2.player = t1.player
FOR XML PATH('')),1,1,''), ',', char(13) + char(10))
from yourtable t1
group by player

关于sql-server - 使用回车换行符将多行合并为一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15572581/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com