gpt4 book ai didi

sql - 建立一个逗号分隔的列表?

转载 作者:行者123 更新时间:2023-12-02 03:12:29 25 4
gpt4 key购买 nike

我正在尝试使用 SQL 构建以逗号分隔的 cat_id 列表

代码是:

declare     @output varchar(max)
set @output = null;
select @output = COALESCE(@output + ', ', '') + convert(varchar(max),cat_id)

编辑:将 '' 更改为 null,仍然相同。但我得到的输出是这样的:

, 66 , 23

不应出现前导逗号。我错过了什么?

最佳答案

您使用的是 SQL 2005 吗?使用 Prop Rob Farley谁最近向我展示了这个:

SELECT stuff((
SELECT ', ' + cast(cat_id as varchar(max))
FROM categories
FOR XML PATH('')
), 1, 2, '');

内部查询(使用 FOR XML PATH(''))选择以逗号分隔的类别 ID 列表,并以“,”开头。外部查询使用 stuff函数删除前导逗号和空格。

我没有方便的 SQL 实例来测试它,所以它是从内存中获得的。您可能需要调整一些参数等才能使其完全按照您想要的方式工作。

关于sql - 建立一个逗号分隔的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1564980/

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