我有一个hive表,其中有一行包含"某些数据,其他一些数据"
基本上,数据中有一个逗号。
但是当我将包含此数据的表格导出到csv时,它会将 某些数据 视为一列, 将其他 < < / strong>数据作为另一列。 因此,对于该记录,所有内容都会移动1列。
例如,在hive数据中就像:
col_name_1 col_name_2 col_name_3
some data,some other myname mylastname
但在csv中导出后,状态为:
col_name_1 col_name_2 col_name_3 extra_not_required_col
some data some other data myname mylastname
因此数据以这种方式被破坏。 我用来将表导出到csv的代码是:
hive -e "set hive.cli.print.header=true;use colorado;select * from $name;" | sed 's/[\t]/,/g' >>intermediate_table.csv
答案 0 :(得分:1)
如果在数据中的逗号周围添加双引号,则应在CSV读取器读取文件时解决此问题。您可以在配置单元中使用以下内容替换它。
select regexp_replace(colname_1,'\\,','","') as colname_1_transformed from table;
您的数据将如下所示,CSV阅读器应该能够处理:
一些数据&#34;,&#34;其他一些