oracle listagg的用法是什么

avatar
作者
筋斗云
阅读量:0

Oracle中的LISTAGG函数用于将多行数据连接成一个单一的字符串,常用于将多行数据聚合为一个字符串,可以在SELECT查询中使用。

语法: LISTAGG (列名, 分隔符) WITHIN GROUP (ORDER BY 列名)

参数解释:

  • 列名:要连接的列名
  • 分隔符:用于分隔连接的字符串
  • ORDER BY:可选参数,指定连接的顺序

示例: 假设有以下表结构: 表名:employees

employee_iddepartment_idemployee_name
1101John
2101Jane
3102Mike
4103Sarah

要将部门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_idemployee_names
101John, Jane

以上查询将部门ID为101的员工姓名连接成一个字符串,并使用逗号分隔。在连接之前,按照员工ID进行了排序。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!