我创建了Hive自定义UDTF。我的新UDTF基于输入2列返回新的3列。
但是,我无法通过使用生成的值进行任何print (group_double_col.xs('a', axis=0, level=0))
num_1 num_2
index_2
c 4 4
d 2 3
print (group_double_col.xs('a', axis=0, level=0, drop_level=False))
num_1 num_2
index_1 index_2
a c 4 4
d 2 3
操作。
例如,
INSERT
INSERT OVERWRITE DIRECTORY 'generated_data.csv' SELECT udtf(one, two) FROM table_orig;
两个INSERT OVERWRITE TABLE test_table SELECT udtf(one, two) FROM table_orig;
查询都返回NullPointerException,如下所示:
INSERT
欢迎任何建议,谢谢!
答案 0 :(得分:1)
在UDTF之后添加列列表:
INSERT OVERWRITE TABLE test_table SELECT udtf(one, two) as (col1, col2, col3) FROM table_orig;