我在 SQL Server 中的较大 Select 语句内有以下查询:
CONVERT(NVARCHAR(2000),stuff((SELECT '; ' + IsNull(D2.SelectedComments,'')
FROM #StudentDetails D2
WHERE D2.STUD_PK = A.STUD_PK AND D2.CourseNo = A.CourseNo
AND D2.Section = A.Section
FOR XML PATH('')),1,2,'')) AS SelectedComments,
本专栏在某些条目后生成一些奇怪的符号,例如这种方法令人满意.
。我不明白 .
来自哪里。在此之前,我尝试执行 SELECT SelectedComments FROM #StudentDetails
操作,但没有看到 .
。谁能告诉我它来自哪里?
最佳答案
如果您修改了 For Xml Path 的使用,它将为您执行转义操作,并且您无需求助于使用替换功能:
, Stuff(
(
Select '; ' + IsNull( D2.SelectedComments, '' )
From #StudentDetails As D2
Where D2.Stud_PK = A.Stud_PK
And D2.CourseNo = A.CourseNo
And D2.Section = A.Section
For Xml Path(''), type
).value('.', 'nvarchar(max)')
, 1, 2, '') As SelectedComments
关于SQL 'stuff' 和 'FOR XML PATH' 生成奇怪的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16547175/