我有 1 列的 Oracle DB 表UUID
如何将UUID一个字符串中的所有值连接起来,以","使输出类似于
"id1","id2","id3","id4"....
您可以使用listagg():
select listagg(uuid, ',') within group(order by uuid) uuids
from mytable
这将为您提供一条记录,其中包含所有uuids 的单列,用逗号分隔。
请注意,listagg()返回 a varchar,因此输出不能超过 4000 字节。
另请注意:
逗号是默认分隔符,因此在您的情况下,不必将第二个参数传递给函数
我添加了一个order by子句以生成确定性结果:此选项不是强制性的,因此如果列表中项目的顺序对您无关紧要,那么您可以将其分开(在这种情况下,您将获得uuid未定义的 s命令)
您可以使用listagg()-- 假设没有太多值。最大字符串大小为 4000 字节。
selest '"' || listagg(uuid, '","') within group (order by uuid) || '"'