Oracle中的LISTAGG函数用于将多行数据连接成一个单一的字符串,常用于将多行数据聚合为一个字符串,可以在SELECT查询中使用。
语法: LISTAGG (列名, 分隔符) WITHIN GROUP (ORDER BY 列名)
参数解释:
- 列名:要连接的列名
- 分隔符:用于分隔连接的字符串
- ORDER BY:可选参数,指定连接的顺序
示例: 假设有以下表结构: 表名:employees
| employee_id | department_id | employee_name |
|---|---|---|
| 1 | 101 | John |
| 2 | 101 | Jane |
| 3 | 102 | Mike |
| 4 | 103 | Sarah |
要将部门ID为101的员工姓名连接成一个字符串,以逗号分隔,可以使用以下查询: SELECT department_id, LISTAGG(employee_name, ‘,’) WITHIN GROUP (ORDER BY employee_id) AS employee_names FROM employees WHERE department_id = 101 GROUP BY department_id;
查询结果:
| department_id | employee_names |
|---|---|
| 101 | John, Jane |
以上查询将部门ID为101的员工姓名连接成一个字符串,并使用逗号分隔。在连接之前,按照员工ID进行了排序。
以上就是关于“oracle listagg的用法是什么”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm