将作为文本字符串存储的制表符分隔的原始数据转换为Hive表?

时间:2016-11-24 10:36:23

标签: mysql hadoop hive hiveql

我有制表符分隔的原始数据,我已将其存储为Hive表中的文本字符串。我希望能够获取第一个,第三个,......,x字段,并将结果存储到另一个具有我选择的字段名称的表中。例如,给出以下内容:

raw_table

Field1  Field2  Field3
01001   1       00-00-32-0-700-000.000

custID_pin Hive表:

custID  PIN
 01001  00-00-32-0-700-000.000

这是我到目前为止所拥有的:

DROP TABLE IF EXISTS custID_pin;
CREATE TABLE custID_pin AS
SELECT 
[psuedocode: column1, column3, where columns are defined by the tab delimiter]
FROM raw_table;

如果使用制表符分隔文件而不是固定宽度文件,如何编写select语句以实现上述所需结果。

1 个答案:

答案 0 :(得分:0)

这样的事情?

DROP TABLE IF EXISTS custID_pin;
CREATE TABLE custID_pin row format delimited fields terminated by '\t' STORED AS TEXTFILE AS select column1, column3 from raw_table where columns1="value";