我有一个用分号分隔列的文件。我想将type
列添加为Array<String>
。我现在所拥有的是我像这样存储原始值(type
列是text):
| age | type | country |
24 a us
29 a,b au <--------- this line is not OK
25 a uk
我的文件如下所示:
age;type1,type2;country
age;type1;country
age;type2;country
如何正确将类型作为
Array<String>
放在表中?
最佳答案
相同的数据将起作用。创建表:
CREATE TABLE array_data_type(
age int,
type array<string>,
contry varchar(100))
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\;'
COLLECTION ITEMS TERMINATED BY ',';
在此表中加载相同的数据。
如果此数据在本地文件中:
LOAD DATA LOCAL INPATH '<file-path>' INTO TABLE array_data_type;
或HDFS文件:
LOAD DATA INPATH '<hdfs-file-path>' INTO TABLE array_data_type;
关于arrays - 配置单元-从文件中将值插入数组(逗号和分号分隔),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40049200/