Oracle 多行转列函数

Oracle中使用WMSYS.WM_CONCAT函数进行多行转列

原数据:

rank   name 

AA      NAME1

AA      NAME2

AA      NAME3 

BB      NAME4

BB      NAME5

SQL>select  trim(t.rank) as rank,

                   wmsys.wm_concat(trim(t.name))  as name

         from table_name  t

            group by  t.rank;

实现的效果是:会先按rank分组,将分组后的name以“,”按组合并为一列。

结果如下:

rank   name 

AA      NAME1,NAME2,NAME3

BB      NAME4,NAME5


注:默认以“,”字符连接合并后的结果

你可能感兴趣的:(oracle,table)