Oracle 表操作之合并多行成一行( listagg within group 、wmsys.wm_concat)

本文介绍了在Oracle数据库中如何使用listagg within group 和 wmsys.wm_concat 函数将多行数据合并成一行。通过示例查询展示了在不同场景下,如何根据条件对多个字段进行聚合,实现数据的汇总展示。这两个方法适用于11g及以上版本的Oracle数据库。
摘要由CSDN通过智能技术生成
一、查询语法: select column1,listagg(column2,',') within group (orderby column3) as column4... from tableName1
注意:oracle11g以上才支持此查法     
1.listagg例子:
   select senc_orgid ,senc_orgname,securname,securid ,depusecurname,depusecurid ,commebname,commebid, securlevname, depusecurlevname from (  
        select orgT.senc_orgid ,orgT.senc_orgname,count(senc_orgid) brannum from ( 
          select t1.id senc_orgid,t1.org_name senc_orgname,t3.id thrd_orgid , t3.thrd_orgname from t_Pb_Organization t1 ,( select t2.id,t2.org_name thrd_orgname ,t2.pid from t_Pb_Organization t2 )  t3   where (t1.id=t3.pid  or (t1.id=t3.id and t1.pid=2)  ) and t1.pid !=0 and t1.isdeleted='0' order by t3.id 
        )
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值