oracle多字段拼接,Oracle实现多行拼接/行转列拼接

数据格式一

—————————————————————————————————————————

CARD_CODE   Q

———   ————————————————

001               quarter_1

001               quarter_2

001               quarter_3

001               quarter_4

002               quarter_1

002               quarter_2

002               quarter_3

002               quarter_4

数据格式二

CARD_CODE   Q

———   ——————————————————————————–

002               quarter_1;quarter_2;quarter_3;quarter_4

001               quarter_1;quarter_2;quarter_3;quarter_4

从格式一到格式二

SELECT   t1.card_code,   substr(MAX(sys_connect_by_path(t1.q,   ‘; ‘)),   2)

FROM   (SELECT   a.card_code,

a.q,

row_number()   over(PARTITION   BY   a.card_code   ORDER   BY   a.q)   rn

FROM   t_change_lc_comma   a)   t1

START   WITH   t1.rn   =   1

CONNECT   BY   t1.card_code   =   PRIOR   t1.card_code

AND   t1.rn   –   1   =   PRIOR   t1.rn

GROUP   BY   t1.card_code

39.904667

116.408198

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值