gpt4 book ai didi

sql - 将查询结果连接到以逗号分隔的单行值

转载 作者:行者123 更新时间:2023-12-02 11:57:57 24 4
gpt4 key购买 nike

Possible Duplicate:
SQL Server: Can I Comma Delimit Multiple Rows Into One Column?

我有一个这样的查询:

SELECT name from users

它的结果是一些记录:

1 user1
2 user2
3 user3

我想将所有这些记录放在一行中,并用逗号分隔:

user1, user2, user3

如果查询结果为空,则为空行。

如何使用 T-SQL 获得此信息? UNPIVOT

最佳答案

您可以使用 COALESCE 函数来实现此目的:

declare @result varchar(max)

select @result = COALESCE(@result + ', ', '') + name
from users

select @result

这适用于 sql server 2000 及更高版本(也可能是更早的版本)。请注意,尽管 sql server 2000 中没有 varchar(max)。

在更高版本的 sql server(2005 及更高版本)中,也可以使用 XML Path() 来执行此操作

select name + ','
from users
for xml path('')

关于sql - 将查询结果连接到以逗号分隔的单行值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2367162/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com