Hive 中的数据可以转置吗?如,行变成列,列是行?如果没有直接的功能,有没有办法通过几个步骤来完成?
我有一张这样的桌子:
| ID | Names | Proc1 | Proc2 | Proc3 |
| 1 | A1 | x | b | f |
| 2 | B1 | y | c | g |
| 3 | C1 | z | d | h |
| 4 | D1 | a | e | i |
我希望它是这样的:
| A1 | B1 | C1 | D1 |
| x | y | z | a |
| b | c | d | e |
| f | g | h | i |
我一直在查找其他相关问题,他们都提到使用横向视图和分解,但是有没有办法选择性地为横向(ly)视图(ing)和分解(ing)选择列?
另外,实现我想做的事情的粗略过程可能是什么?请帮帮我。谢谢!
编辑:我一直在阅读这个链接:https ://cwiki.apache.org/Hive/languagemanual-lateralview.html它向我展示了我想要实现的一半。链接中的第一个示例基本上是我想要的,除了我不希望行重复并希望它们作为列名。关于如何将数据转换为表单的任何想法,如果我执行explode
,它将导致我想要的输出,或者以其他方式,即explode
首先导致另一个步骤,然后导致我想要的输出表。再次感谢!