【发布时间】:2010-09-16 17:29:13
【问题描述】:
考虑一个包含名称的数据库表,三行:
Peter
Paul
Mary
有没有一种简单的方法可以将其转换为 Peter, Paul, Mary 的单个字符串?
【问题讨论】:
-
对于特定于 SQL Server 的答案,请尝试this question。
-
对于 MySQL,请查看 Group_Concat from this answer
-
我希望 SQL Server 的下一个版本能够提供一个新功能来优雅地解决多行字符串连接,而不会像 FOR XML PATH 那样愚蠢。
-
不是 SQL,但如果这是一次性的,您可以将列表粘贴到此浏览器工具中 convert.town/column-to-comma-separated-list
-
在 Oracle 中,您可以使用 11g r2 中的 LISTAGG(COLUMN_NAME),之前有一个不受支持的名为 WM_CONCAT(COLUMN_NAME) 的函数可以执行相同的操作。
标签: sql sql-server csv string-concatenation group-concat