【问题标题】:Display column values rowwise in sql在sql中按行显示列值
【发布时间】:2020-11-21 00:55:43
【问题描述】:

我们可以让列值按行显示,用逗号分隔吗?例如,下面返回一列。我们可以实现预期的输出吗

select [name] as database_name
from sys.databases

实际输出

database_name
db1
db2
db3

预期输出

database_name
db1, db2, db3

【问题讨论】:

标签: sql sql-server string-aggregation


【解决方案1】:

是的,您可以使用 FOR XML PATH 来连接列值:

SELECT name = STUFF((
            SELECT ',' + NAME
            FROM sys.databases
            FOR XML PATH('')
            ), 1, 1, '')

【讨论】:

  • 。 .删除外部查询中的FROM 子句。
猜你喜欢
  • 2020-03-19
  • 2016-09-14
  • 1970-01-01
  • 1970-01-01
  • 2017-11-20
  • 2021-07-03
  • 2021-11-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多