关于oracle函数listagg的使用说明
2015-11-09 18:21
330 查看
关于oracle函数listagg的使用说明
工作中经常遇到客户提出这样的需求,希望在汇总合并中,能够把日期逐个枚举出来。
如图,原始数据是这样的:
客户希望能够实现这样的汇总合并:
那么通常我会使用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)
工作中经常遇到客户提出这样的需求,希望在汇总合并中,能够把日期逐个枚举出来。
如图,原始数据是这样的:
客户希望能够实现这样的汇总合并:
那么通常我会使用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 CASE WHEN 用法介绍
- oracle恢复删除的数据
- Oracle 阻塞会话的查看与解除
- Oracle 中 sign和decode 函数用法
- 将oracle的Date转换为相应格式输出
- oracle数据库的导出与导入备忘
- Ubuntu Linux下安装Oracle JDK
- oracle系统包——dbms job用法(oracle定时任务)
- oracle 查询杀死死锁方案
- Oracle CASE WHEN 用法介绍
- Oracle如何跳过被锁死的数据
- Oracle 中 decode 函数用法
- Oracle分区表drop和truncate partition索引失效问题
- oracle中的约束
- wm_concat与listagg
- Oracle中查询使用正则表达式函数REGEXP_LIKE
- oracle建表
- oracle定期生成和删除表分区
- oracle session 相关优化
- JRE 1.8.0_65/66 Certified with Oracle E-Business Suite