Oracle中使用SQL将查询的结果以逗号分隔并转成varchar2 字符串类型

在Oracle 11G以下版本中,如果想要将查询的结果以逗号分隔并转化成字符串,那么可以通过如下操作。

主要用到两个函数,

  • wm_concat(字段)
    • 返回CLOB 类型对象
  • dbms_lob.substr(字段,长度,起始位置)
    • 将CLOB类型对象截取后转换成字符串

示例如下:
假设查询结果

SELECT
ID
FROM 
T_USER

查询结果为

1
2
3
4
5
6
7
8
9
10
11
12

想列转行返回这样的结果:

1,2,3,4,5,6,7,8,9,10,11,12

那么可以修改SQL 如下即可:

SELECT
dbms_lob.substr(wm_concat(ID),4000,1)
FROM 
T_USER 

执行效果如下所示:

1,2,3,4,5,6,7,8,9,10,11,12

参考资料:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客星云

谢谢认可,希望对你的学习有帮助

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值