sql-server - 表中的所有列都将 SQL 字符串化

标签 sql-server string

如何在 SQL 中将多列变成字符串

按照@Alex Aza单列字符串 :

 select stuff(
    (select ',' + cast([colum_name] as varchar)
    from [dbtest].[dbo].[table]
    for xml path('')),
    1, 1, '')

如何使用它来获取表中所有列的字符串? 我正在考虑使用动态 SQL...

举个例子

col1  col2 col3
---------------
1    7    13 
2    8    14
3    9    15
4   10    16
5   11    17
6   12    18

(结果类似于:1,2,3,4,5,6)

如何使其返回:

1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18

最佳答案

也许,你可以尝试这样的事情。

SELECT STUFF(
                    (
                        SELECT  ',' + CAST([col] AS VARCHAR)
                        FROM
                        (
                            SELECT col1 AS col FROM [dbtest].[dbo].[table] UNION
                            SELECT col2 AS col FROM [dbtest].[dbo].[table] UNION
                            SELECT col3 AS col FROM [dbtest].[dbo].[table] 
                        ) alldata
                        FOR XML PATH('')
                    )
                ,   1
                ,   1
                ,   ''
            )

表中的示例数据如下所示...

Data

查询输出如下:

Output

关于sql-server - 表中的所有列都将 SQL 字符串化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6935983/

相关文章:

sql - 如何使用变量作为表名检查表是否存在

sql-server - 表分区与多个表

python - python 字符串连接问题

c - 用空格写入二进制文件 C 编程

python - 将字符串转换为字典的简单方法

sql - 查询从 SQL Server 中的表中检索前两行

sql - 如何根据sql查询结果中的顺序枚举一组连续的行

sql-server - SQL INNER JOIN vs LEFT JOIN with a WHERE

string - 在 Julia 中以整数形式表示非数字字符串

python - python 如何存储字符串以便 'is' 运算符对文字起作用?