在配置单元中将单行列拆分为多列

guykilcj  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(317)

我有一张这样的Hive桌

  1. ID1 Name1 ID2 Name2 ID3 Name3....
  2. 1 ABC 2 MNP 3 XYZ
  3. 11 LMP 12 PLL 13 UIP

此表可以有任意数量的列对(即id和name)
我需要将上面的表转换成一个新的配置单元表,它只有两列id和name,如下所示

  1. ID Name
  2. 1 ABC
  3. 2 MNP
  4. 3 XYZ
  5. 11 LMP
  6. 12 PLL
  7. 13 UIP

请建议我如何在Hive中实现这一点。
谢谢

cuxqih21

cuxqih211#

  1. select explode(map(*)) as (id,name)
  2. from mytable
  3. ;
  1. +----+------+
  2. | id | name |
  3. +----+------+
  4. | 1 | ABC |
  5. | 2 | MNP |
  6. | 3 | XYZ |
  7. | 11 | LMP |
  8. | 12 | PLL |
  9. | 13 | UIP |
  10. +----+------+

相关问题