一、多列转成多行
https://www.cnblogs.com/thxj/p/12722998.html
分3个步骤:
-
先把多个列拼接成一列 t: concat(‘1′,’_’, m1,’:’ ‘2’,’_’,’m2′) as t
-
再将t 列切分成一个数组,通过 splitByChar(‘:’,cast( tmp as String)) as src
-
将数组的每个元素都拆分成多个行值:arrayJoin(splitByChar(‘:’,cast( tmp as String)) as src)
二、多行转成多列
sumIf(value, key_name = ‘guidance’) AS guidance,
sumIf(value, key_name = ‘budget’) AS budget,
sumIf(value, key_name = ‘reality’) AS ytd,
版权声明:本文为u010738184原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。