我在Hive中有2个表 - 第一个是外部的,第二个是管理的 . 使用INSERT OVERWRITE ... SELECT FROM external_table从外部填充托管表 . 这两个表都是用','分隔的行创建的 . 当我运行选择查询到文件时,结果文件中的分隔符是Tab,但我需要逗号 . 如何将其更改为逗号,我看不到它的属性 .
首先,你需要改变你的字段分隔符,而不是你的行分隔符ie .
hive >> CREATE TABLE some_table (col1 int, col2 int, col3 string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS TEXTFILE;
其次,如果您仍然遇到此问题,您只需使用sed进行更改即可 .
bash >> hive -e 'select * from some_Table' | sed 's/[\t]/,/g' > outputfile.txt
请不要[\ t]按Control V,然后按Tab键:
sed 's/<Control+V><TAB character>/,/g'
1 回答
首先,你需要改变你的字段分隔符,而不是你的行分隔符ie .
其次,如果您仍然遇到此问题,您只需使用sed进行更改即可 .
请不要[\ t]按Control V,然后按Tab键: