DB2数据库多行一列转换成 一行一列

在db2中遇到多行一列转为一行一列的需求时,用db2函数 LISTAGG可以实现该功能。语法如下:

SELECT   [分组的字段 ] , LISTAGG([需要聚合的字段名], ',')   FROM  [表名]    GROUP BY [分组的字段名] ;

设计以下实验,阐述该函数实现行转列的方法。
步骤1:用sql构造一张临时表数据如下:

create table test(id BIGINT,name varchar(20));

insert into test values(1,'a');
insert into test values(1,'b');
insert into test values(1,'c');
insert into test values(2,'d');
insert into test values(2,'e');

select  S.id,listagg(S.name , ',')  as name_new  from test  S  group by S.id;

https://blog.csdn.net/zejunwzj/article/details/84061315

猜你喜欢

转载自www.cnblogs.com/bill89/p/11775604.html