首页 > 解决方案 > HIVE 中的 UN-Pivot

问题描述

我正在使用一个 HIVE 表,并且有如下数据:

id  channel pkg_1_sk    pkg_1_nm    pkg_1_prod_1_sk pkg_1_prod_1_nm pkg_1_prod_2_sk pkg_1_prod_2_nm pkg_2_sk    pkg_2_nm    pkg_2_prod_1_sk pkg_2_prod_1_nm pkg_2_prod_2_sk pkg_2_prod_2_nm
abc XYZ      1          Package-1   1               Prod-1          2               Prod-2           2          Package-2   3                 Prod-3         2               Prod-2

我想要如下数据:

id  channel pkg_sk  prod_sk
abc XYZ     1       1
abc XYZ     1       2
abc XYZ     2       3
abc XYZ     2       2

有什么方法可以在不使用 UNION ALL 的情况下实现结果。源表很大,UNION ALL 会导致性能问题。

标签: hivehiveql

解决方案


推荐阅读