一、行转列
(1)sum(decode(列字段,?,列字段1,0)) 列字段名 max(decode(列字段,?,列字段1,'')) 列字段名 max(decode(列字段,?,列字段1,'')) 列字段名
当列字段=?是取列字段1的值,否则取0或'' [区别:sum 要求列字段1的值必须是数字,max/min可以是数字或字符串]
(2)listagg()函数
基础的用法如下:listagg() WITHIN GROUP ()
LISTAGG(1,2) WITHIN GROUP( ORDER BY 3)
1:需要拼接的数据表中的字段
2:以什么字符分割,例如逗号,分号等字符
2与3是相同的字段
它的用法就像聚合函数一样,通过Group by语句,把每个Group的一个字段,拼接起来
例如:
SELECT LISTAGG(t.e