listagg() within group 用于将多行转换成一行显示,即行转列,如下示例:
在t7_insurer_function表中可以看到一个insu_code对应多个busi_code字段,这时我想把它们用逗号分割,显示在一行里,这个时候就用到了行转列函数。
SELECT insu_code,listagg(busi_code,',') within group (order by busi_code ) busi_code FROM t7_insurer_function GROUP BY insu_code ; 结果如下: 用法解释如下: listagg(busi_code,',') within group (order by busi_code ) 第一个参数busi_code表示需要在一行显示的字段,第二个参数表示使用逗号分割多个busi_code,order by busi_code表示排序,以什么样的顺序进行显示;
结果如下:
用法解释如下:
listagg(busi_code,',') within group (order by busi_code ) 第一个参数busi_code表示需要在一行显示的字段,第二个参数表示使用逗号分割多个busi_code,order by busi_code表示排序,以什么样的顺序进行显示;