将两列合并为配置单元中的单个映射列 table

Combining two columns into a single map column in hive table

我有一个蜂巢table喜欢

    a   b  
-------------
    1   2
    3   4

如何创建地图列c

     c
-----------
    1: 2
    3: 4

a 列是键,第 b 列是值?

在 Hive 中使用 map() 构造:

select map(a,b) as c from mytable

在 Presto 中你可以使用 map(array[key], array[value])

select map(array[a],array[b]) as c from mytable

或map_agg()

select map_agg(a,b) as c from mytable group by a,b