首页 > 解决方案 > 用引号显示多列输出值的 STUFF 函数 SQL Server

问题描述

STUFF 函数在引号中的多列输出值

SELECT 
    STUFF((SELECT DISTINCT ',' + CAST(t.Col1 AS VARCHAR(MAX))
           FROM Table_1 t
           FOR XML PATH('')), 1, 1, '')

需要的输出:

col1
-----------------
'abc',xyz','pqr'

如何在上述查询的输出中为每个值包含引号('')。

标签: sql-server

解决方案


SELECT 
STUFF((SELECT DISTINCT ',''' + CAST(t.Col1 AS VARCHAR(MAX))+''''
FROM Table_1  t
FOR XML PATH(''),TYPE).value(N'.','nvarchar(max)'), 1, 1, '')

推荐阅读