我正在尝试将以下数据插入到配置单元表中:
John Doe ^ A100000.0 ^ AMary Smith ^ BTodd Jones ^ AFederal Taxes ^ C.2 ^ BState 税收^ C.05 ^ BInsurance ^ C.1 ^ A1 Michigan Ave. ^ BChicago ^ BIL ^ B60600
Mary Smith ^ A80000.0 ^ ABill King ^ AFederal Taxes ^ C.2 ^ BState Taxes ^ C. 05 ^ BInsurance ^ C.1 ^ A100安大略省St. ^ BChicago ^ BIL ^ B60601
Todd Jones ^ A70000.0 ^ AFederal Taxes ^ C.15 ^ BState Taxes ^ C.03 ^ BInsurance ^ C. 1 ^ A200 Chicago Ave. ^ BOak Park ^ BIL ^ B60700
比尔·金^ A60000.0 ^ AFederal Taxes ^ C.15 ^ BState Taxes ^ C.03 ^ BInsurance ^ C. 1 ^ A300模糊博士^ BObscuria ^ BIL ^ B60100这是我正在使用的查询:
CREATE TABLE员工(
名称STRING,
薪水FLOAT,下属ARRAY,
扣除MAP,
地址STRUCT ) ROW FORMAT DELIMITED
终止于'\ 001'
的字段由'\ 002'
终止的收集物品由'\ 003'
终止的MAP键'\ n'终止的行
存储为文本文件
LOAD LOCAL INPATH'/home/cloudera/a.txt';
但是所有细节都存储在一列中。任何人都可以解释原因。
John Doe ^ A100000.0 ^ AMary Smith ^ BTodd Jones ^ AFederal Taxes ^ C.2 ^ BState NULL null null null 税收^ C.05 ^ BInsurance ^ C.1 ^ A1 Michigan Ave. ^ BChicago ^ BIL ^ B60600 NULL null null null Mary Smith ^ A80000.0 ^ ABill King ^ AFederal Taxes ^ C.2 ^ BState Taxes ^ C. NULL null null null 05 ^ BInsurance ^ C.1 ^ A100 Ontario St. ^ BChicago ^ BIL ^ B60601 NULL null null null Todd Jones ^ A70000.0 ^ AFederal Taxes ^ C.15 ^ BState Taxes ^ C.03 ^ BInsurance ^ C. NULL null null null 1 ^ A200 Chicago Ave. ^ BOak Park ^ BIL ^ B60700 NULL null null null Bill King ^ A60000.0 ^ AFederal Taxes ^ C.15 ^ BState Taxes ^ C.03 ^ BInsurance ^ C. NULL null null null 1 ^ A300 Obscure Dr. ^ BObscuria ^ BIL ^ B60100 NULL null null null
答案 0 :(得分:2)
这可能是输入数据文件的问题,如果您手动创建此文件,您需要在文件中正确插入分隔字符,我建议您可以从图书网站下载示例文本文件(我假设你指的是编程蜂巢书),然后尝试一下。输入文件在那里可用,我可以加载它...
答案 1 :(得分:0)
遇到同样的问题。
在创建表时解决,更改默认的ROW FORMAT DELIMITED,'\ 001' - > ',''\ 002' - > ';' '\ 003' - > ':'强>
然后您可以使用上面的字符准备文本文件进行拆分。