Sql 将所有Id合并到单个列中

Sql 将所有Id合并到单个列中,sql,string-aggregation,Sql,String Aggregation,从产品中选择ProductId 我得到的结果如下: 产品ID 1 2 3 4 我希望得到如下输出: 产品ID 1,2,3,4 试试这个: declare @aa varchar (200) set @aa = '' select @aa = case when @aa = '' then cast(Productid as varchar) else @aa + coalesce(',' + cast(Productid as varchar), '') end from

从产品中选择ProductId 我得到的结果如下: 产品ID

  1
  2
  3
  4
我希望得到如下输出:

产品ID

1,2,3,4
试试这个:

declare @aa varchar (200)
set @aa = ''

select @aa = 
case when @aa = ''
then cast(Productid as varchar)
else @aa + coalesce(',' + cast(Productid as varchar), '')
end
from Products

print @aa

请澄清您的具体问题或添加其他详细信息,以突出显示您所需的内容。正如目前所写的,很难准确地说出你在问什么。请参阅页面以获取澄清此问题的帮助。您使用的是哪一种?“SQL”只是一种查询语言,而不是特定数据库产品的名称。请为您正在使用的数据库产品添加一个标记,
postgresql
oracle
sql server
db2
,…在Postgres中使用
string\u agg()