在 STUFF() 上添加回车符

问题描述 投票:0回答:3

我正在使用 TSQL

STUFF()
语法(见下文)将 Client 字段连接成一行,并且代码工作起来就像一个魅力,但现在我有另一个挑战,我需要为每个客户端添加一个回车符以显示客户端每行而不是连续。

STUFF((SELECT ', ' + Client 
FROM #Resulttbl
WHERE [row_date] = r.[row_Date]
FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 2, '') + CHAR(13)ELSE Client END)

sql-server t-sql ssrs-2008-r2
3个回答
3
投票

在您的查询中添加了

+char(13)
,并将内容从 2 增加到 3。

STUFF((SELECT ', '+ CHAR(13) + Client 
FROM #Resulttbl
WHERE [row_date] = r.[row_Date]
FOR XML PATH('')
, TYPE).value('.[1]', 'nvarchar(max)'), 1, 3, '') + CHAR(13)ELSE Client END)

1
投票

您可以用替换来包装整个 stuff 函数。我有点不得不猜测你的代码是什么,因为你似乎留了一部分 case 表达式。

REPLACE(STUFF((SELECT ', ' + Client 
FROM #Resulttbl
WHERE [row_date] = r.[row_Date]
FOR XML PATH(''), TYPE).value('.[1]', 'nvarchar(max)'), 1, 2, ''), ', ', ',' + char(13))

0
投票

开头的逗号怎么来的。我还想在 CR 之后添加一个选项卡

© www.soinside.com 2019 - 2024. All rights reserved.