首页 > 数据库 > mysql教程 > 如何将 SQL Server 表行转换为逗号分隔的字符串?

如何将 SQL Server 表行转换为逗号分隔的字符串?

Susan Sarandon
发布: 2025-01-16 23:26:11
原创
115 人浏览过

How to Convert SQL Server Table Rows into a Comma-Delimited String?

在 SQL Server 中将表行转换为逗号分隔的字符串

在 SQL Server 中将行连接成逗号分隔的字符串,可以结合使用 STUFF() 和 FOR XML PATH() 函数。

演示如下:

  1. 创建并填充示例表:

    <code class="language-sql"> DECLARE @T AS TABLE
     (
         Name varchar(10)
     )
    
     INSERT INTO @T VALUES
     ('John'),
     ('Vicky'),
     ('Sham'),
     ('Anjli'),
     ('Manish')</code>
    登录后复制
  2. 使用逗号分隔符连接行:

    <code class="language-sql"> SELECT STUFF((
         SELECT ',' + Name
         FROM @T
         FOR XML PATH('')
     ), 1, 1, '') As [输出];</code>
    登录后复制

此查询会将 @T 中的行连接成单个逗号分隔的字符串,结果如下:

<code>输出
John,Vicky,Sham,Anjli,Manish</code>
登录后复制

说明:

  • FOR XML PATH() 函数生成行的 XML 表示形式,每行都包含在一个逗号分隔的列表中。
  • 然后,STUFF() 函数用于删除结果中多余的起始和结束尖括号。
  • STUFF() 函数中的 1, 1 指示应删除第一个字符(即前导逗号)。

以上是如何将 SQL Server 表行转换为逗号分隔的字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板