您的位置:首页 > 数据库 > Oracle

关于oracle函数listagg的使用说明

2013-04-17 13:03 232 查看
工作中经常遇到客户提出这样的需求,希望在汇总合并中,能够把日期逐个枚举出来。

如图,原始数据是这样的:



客户希望能够实现这样的汇总合并:



 

那么通常我会使用listagg这个函数,但是好多网上都是系统的全面的介绍listagg这个函数的使用方法,看起来很费力气。在这里我简明扼要的说明一下

 

实现这个需求的语句是这样的:

select name,
listagg(ddate,'
/ ')   within 
group (order 
by  name) 
as  ddate
from  aa
group  by 
name

 

需要注意的事项如下:

1.      
必须得分组,也就是说group  by是必须的。

2.      
listagg函数的第一个参数是需要进行枚举的字段,也就是ddate;第二个参数是枚举数值之间的分隔符;同时还需要进行排序和分组within group (order by name)

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据库 oracle 需求