[HIVE-3682] when output hive table to file,users should could have a separator of their own choice – ASF JIRA

By default,when output hive table to file ,columns of the Hive table are separated by ^A character (that is \001).

But indeed users should have the right to set a seperator of their own choice.

Usage Example:

create table for_test (key string, value string);

load data local inpath ‘./in1.txt’ into table for_test

select * from for_test;

UT-01:default separator is \001 line separator is \n

insert overwrite local directory ‘./test-01’

select * from src ;

create table array_table (a array<string>, b array<string>)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY ‘\t’

COLLECTION ITEMS TERMINATED BY ‘,’;

load data local inpath “../hive/examples/files/arraytest.txt” overwrite into table table2;

CREATE TABLE map_table (foo STRING , bar MAP<STRING, STRING>)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY ‘\t’

COLLECTION ITEMS TERMINATED BY ‘,’

MAP KEYS TERMINATED BY ‘:’

STORED AS TEXTFILE;

UT-02:defined field separator as ‘:’

insert overwrite local directory ‘./test-02’

row format delimited

FIELDS TERMINATED BY ‘:’

select * from src ;

UT-03: line separator DO NOT ALLOWED to define as other separator

insert overwrite local directory ‘./test-03’

row format delimited

FIELDS TERMINATED BY ‘:’

select * from src ;

UT-04: define map separators

insert overwrite local directory ‘./test-04’

row format delimited

FIELDS TERMINATED BY ‘\t’

COLLECTION ITEMS TERMINATED BY ‘,’

MAP KEYS TERMINATED BY ‘:’

select * from src;

来源URL:https://issues.apache.org/jira/browse/HIVE-3682