当前位置:   article > 正文

hive 字段中逗号怎么处理_hadoop-Hive加载带引号的字段中带有逗号的CSV

hive导入csv文件有逗号

hadoop-Hive加载带引号的字段中带有逗号的CSV

我正在尝试将CSV文件加载到Hive表中,如下所示:

CREATE TABLE mytable

(

num1 INT,

text1 STRING,

num2 INT,

text2 STRING

)

ROW FORMAT DELIMITED FIELDS TERMINATED BY ",";

LOAD DATA LOCAL INPATH '/data.csv'

OVERWRITE INTO TABLE mytable;

csv以逗号(,)分隔,如下所示:

1, "some text, with comma in it", 123, "more text"

由于第一个字符串中有一个',',这将返回损坏的数据。

有没有办法设置文本定界符或使Hive忽略字符串中的','?

我无法更改csv的定界符,因为它是从外部来源获取的。

6个解决方案

33 votes

问题是Hive无法处理引用的文本。 您要么需要通过更改字段之间的定界符来预处理数据(例如,使用Hadoop流作业),要么还可以尝试使用自定义CSV SerDe,后者使用OpenCSV来解析文件。

Lorand Bendig answered 2020-06-23T22:25:33Z

32 votes

如果可以重新创建或解析输入数据,则可以为CREATE TABLE指定转义字符:

ROW F

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/590073
推荐阅读
相关标签
  

闽ICP备14008679号