在配置单元的外部表中插入逗号分隔的数据

8nuwlpux  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(371)
create external table transaction_usa_canada
(
tran_id int,
acct_id int,
tran_date string,
amount double,
description string,
branch_code string,
product string,
tran_state string,
tran_city string,
speendby string,
tran_zip int,
source_table string
)
row format delimited
stored as textfile
location '/user/DSNew18/Bank_DS18/tran_usa_canada';

INSERT INTO TABLE myproject.transaction_usa_canada 
SELECT tran_id, acct_id, tran_date, amount, description, branch_code,'', tran_state, tran_city, speendby, tran_zip, 'usa' AS source_table FROM transaction_usanew18
UNION ALL
SELECT tran_id, acct_id, tran_date, amount, description, branch_code,'', tran_state, tran_city, speendby, tran_zip, 'canada' AS source_table FROM transaction_canadanew18;

上面是我的查询,通过组合其他两个外部表来插入配置单元中的外部表。一切正常。问题是存储在表中的数据不是逗号分隔的。为了以逗号分隔的格式获取数据,我应该做哪些更改。

k75qkfdt

k75qkfdt1#

create external table transaction_usa_canada
(
tran_id int,
acct_id int,
tran_date string,
amount double,
description string,
branch_code string,
product string,
tran_state string,
tran_city string,
speendby string,
tran_zip int,
source_table string
)
row format delimited
fields terminated by ','
stored as textfile
location '/user/DSNew18/Bank_DS18/tran_usa_canada';

INSERT INTO TABLE myproject.transaction_usa_canada 
SELECT tran_id, acct_id, tran_date, amount, description, branch_code,'', tran_state, tran_city, speendby, tran_zip, 'usa' AS source_table FROM transaction_usanew18
UNION ALL
SELECT tran_id, acct_id, tran_date, amount, description, branch_code,'', tran_state, tran_city, speendby, tran_zip, 'canada' AS source_table FROM transaction_canadanew18;

使用上面的代码获取逗号分隔的数据。

vql8enpb

vql8enpb2#

外接程序创建表

CREATE Table table(
 ....
)
row format delimited    
FIELDS TERMINATED BY ‘,’

相关问题