oracle 列转行(把一个表的所有列连成一行,用逗号分隔)

从网上找了都是关于decode的方法实现的列转行,后来发现了用orcale的wmsys.wm_concat方法可以轻松的实现,下面的范例是网上找的:wmsys.wm_concat要10g以后才可以。

 表结构:

 1  A
 1  B
 1  C
 2  A
 2  B
 3  C
 3  F
 4  D
 转换后变成:     

 1  A,B,C
 2  A,B
 3  C,F
 4  D

      方法:

 假设你的表结构是tb_name(id, remark),则语句如下:

 SELECT 
   a.id,
   wm_concat (a.remark) new_result
 FROM 
 tb_name a
 group by 
 a.id
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值