sql - 从行中获取逗号分隔的字符串

标签 sql sql-server tsql sql-server-2012

这个问题在这里已经有了答案:





How to concatenate text from multiple rows into a single text string in SQL Server

(47 个回答)


4年前关闭。




MS Sql Server 中的查询将我的行连接成一个字符串,以逗号分隔(如下所示)

query to delimeter string

最佳答案

使用 STUFF FOR XML :

创建并填充示例表( 在您以后的问题中为我们保存这一步)

DECLARE @T AS TABLE
(
    Name varchar(10)
)

INSERT INTO @T VALUES
('John'),
('Vicky'),
('Sham'),
('Anjli'),
('Manish')

查询:
SELECT STUFF((
    SELECT ',' + Name
    FROM @T
    FOR XML PATH('')
), 1, 1, '') As [output];

结果:
output
John,Vicky,Sham,Anjli,Manish

关于sql - 从行中获取逗号分隔的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41787834/

相关文章:

c# - SQL Server 插入

sql - 为什么我重构的 SQL 运行速度要快几个数量级?

sql - 合并两个 STRING_SPLIT

sql - SQL Server 中的 ALTER 与 DROP & CREATE

MYSQL - 根据某个字段返回最近5行

java - 代码执行时间非常长

php - 如何在 MySQL 中设置相反的条件?

php - 正确处理多行多列的查询结果

sql-server - 从 sql 修改 SSIS 目录中的连接管理器信息

sql - float 转换为 nvarchar 并限制最大大小