我正在尝试将数据从 excel 导出到配置单元表中,同时这样做,我有一列“ABC”,其值类似于“1,2,3”。我使用了横向视图分解功能,但它对我的数据没有任何作用。
以下是我的代码片段: CREATE TABLE table_name ( id string, brand string, data_name string, name string, address string, country string, flag string, sample_list array ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE
;
LOAD DATA LOCAL INPATH 'location' INTO TABLE table_name ;
输出样本:
id 品牌 data_name 名称 地址 国家 flag sample_list
19 1 ABC SQL ABC 玉米淀粉 IN 1 ["[1,2,3]"]
然后我做: 从franchise_unsupress LATERAL VIEW explode(SEslist) SEslist中选择*作为final_SE;
输出样本:
id 品牌 data_name 名称 地址 国家 flag sample_list
19 1 ABC SQL ABC 玉米淀粉 IN 1 [1,2,3]
我也试过: select * fromfranchise_unsupress 横向视图 explode(split(SEslist,',')) SEslist AS final_SE ; 但出现错误:
失败:ClassCastException org.apache.hadoop.hive.serde2.objectinspector.StandardListObjectInspector 无法转换为 org.apache.hadoop.hive.serde2.objectinspector.PrimitiveObjectInspector
而我需要的是:
id 品牌 data_name 名称 地址 国家 flag sample_list
19 1 ABC SQL ABC 玉米淀粉 IN 1 1 19 1 ABC SQL ABC 玉米淀粉 IN 1 2 19 1 ABC SQL ABC 玉米淀粉 IN 1 3
任何帮助将不胜感激!谢谢你