基于以下教程,Hive 有一个地图类型。但是,似乎没有记录的方法可以通过SELECT
带有一些 UDF 或内置函数的方式将新的键值对插入 Hive 映射。这可能吗?
澄清一下,假设我有一个名为foo
单列的表, typed map
, named column_containing_map
。
现在我想创建一个新表,它也有一个列 typed map
,但我希望每个映射(包含在一个列中)都有一个额外的键值对。
查询可能如下所示:
CREATE TABLE IF NOT EXISTS bar AS
SELECT ADD_TO_MAP(column_containing_map, "NewKey", "NewValue")
FROM foo;
然后该表bar
将包含与表相同的映射,foo
除了其中的每个映射bar
都有一个额外的键值对。