在hive中,我正在尝试将数据放入特定列中,然后将其拆分为新列。然后我想移动一个包含一些值的列并将它们移动到那些新列中。如果不清楚这就是我的意思
表名:atable
在:
名称日期标签值
name1 date1 label1 1
name2 date2 label2 2
name3 date3 label3 3
name4 date4 label4 4
name5 date5 label5 5
后:
名称日期Label1 Label2 Label3 Label4 Label5
name1 date1 1
name2 date2 * * ** * ** * ** * * 2
name3 date3 * * ** * ** * ** * ** < em> * ** * ** * * 3
name4 date4 * * ** * ** * ** * ** < EM> * ** * ** * ** * ** * 的 4
name5 date5 * * ** * ** * ** * ** < EM> * ** * ** * ** * ** * ** < em> * ** * ** * ** * **** 5
值1将在列标签1中。值2将在列标签2中,等等......所有空白显然都是空的。
此外,如果这太难或太糟糕,我也想把它们放在单独的表中。在每个表中,列都是名称,日期和标签列中的每个值。在最后一列下面就是值。
我尝试过使用动态分区和加入,但它似乎不起作用 请帮忙!!提前谢谢。
答案 0 :(得分:1)
您是否尝试进行交叉制表?如果是,请参阅提供PostgreSQL tablefunc
contrib module的crosstab
function。参见那里的例子。
要使用它,您需要能够通过任何Hive调用本机PostgreSQL函数。