将键值加载到配置单元中的Map中

dwbf0jvd  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(348)

我有一个表,表1有5列,表2有3列

DESCRIBE Table1;

col1 int
col2 int
col3 int
col4 int
col5 int

DESCRIBE Table2;

col1 int
col2 int
mapcol map<string, int>

我现在想将数据从表1复制到表2,其中col3、col4、col5将作为键值对存储在mapcol中。类似mapcol<col3:value\u of\u col3,col4:value\u of\u col4,col5:value\u of\u col5>
我尝试直接使用insert-into从表1复制到表2,但没有成功。
我使用的查询是这样的

INSERT INTO TABLE Table2 SELECT
t1.col1 AS col1,
t1.col2 AS col2,
t1.col3 AS mapcol ["col3"]
FROM Table1 t1

Logging initialized using configuration in file:/etc/hive/conf.dist/hive-log4j.properties
FAILED: NullPointerException null

有人能帮我一下吗?

af7jpaap

af7jpaap1#

找到了一个快速而肮脏的方法!我们可以通过在配置单元中使用字符串Map函数来实现这一点。但是,为了使用字符串\u to \u map,我们必须将map改为map。

相关问题