关于oracle的listagg函数的用法的记录

今天在itpub论坛里看到的一个开发中常常碰到的listagg问题,在这里做个记录,问题描述是这样:
houseid  orgname  tel   col
1           张三       180    1
1           李四       181    2
2           刘五       170    1
2           陈六       null     2
2           宋七       151    3

以上是数据结构 ,需要的结果是
houseid      orgname                  tel      
1              张三  李四                180  181
2              刘五  陈六  宋七        170   151


版主bell6248给出的答案是:
select houseid, 
       listagg(orgname, ' ') within group(order by col) orgname, 
       listagg(tel, ' ') within group(order by col) tel
  from t 
  group by houseid;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25903968/viewspace-1682512/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25903968/viewspace-1682512/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值