gpt4 book ai didi

sql - 从DB2中的查询创建定界字符串

转载 作者:行者123 更新时间:2023-12-04 04:45:16 24 4
gpt4 key购买 nike

我试图根据iSeries(AS/400)上的DB2中的查询结果创建一个定界字符串。我已经在T-SQL中完成了此操作,但是在这里找不到解决方法。

这是我在T-SQL中的代码。我正在寻找DB2中的平衡点。

DECLARE @a VARCHAR(1000)
SELECT @a = COALESCE(@a + ', ' + [Description], [Description])
FROM AP.Checkbooks
SELECT @a

如果我的表格中的描述如下所示:

Desc 1
Desc 2
Desc 3



然后它将返回此:

Desc 1, Desc 2, Desc 3

最佳答案

本质上,您正在寻找与DB2中MySQL的GROUP_CONCAT聚合函数等效的函数。根据one thread I found的介绍,您可以通过执行XMLAGG函数来模仿此行为:

create table t1 (num int, color varchar(10));

insert into t1 values (1,'red'), (1,'black'), (2,'red'), (2,'yellow'), (2,'green');

select num,
substr( xmlserialize( xmlagg( xmltext( concat( ', ', color ) ) ) as varchar( 1024 ) ), 3 )
from t1
group by num;

这将返回
1 red,black
2 red,yellow,green

(或者应该,如果我没看错的话)

关于sql - 从DB2中的查询创建定界字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3728010/

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