我正在尝试从 csv 中创建一个 Redshift 外部表,其中包含转义引号,如中所述rfc4180 https://www.rfc-editor.org/rfc/rfc4180:
如果使用双引号将字段括起来,则使用双引号
出现在字段内的内容必须通过在其前面添加另一个字段来转义
双引号。
例如:“aaa”、“b”、“bb”、“ccc”
我没有收到任何错误,但决赛桌有一个null
我的字符串应该在的值。
有没有办法让 Redshift 在创建外部表时理解这种 csv 格式?
I do not想要更改 csv 文件的格式。
示例 csv:
"some ""text""",some more text,"more, text",and more
外部表创建示例:
create external table spectrum.spectrum_test_quote(
a varchar(32),
b varchar(32),
c varchar(32),
d varchar(32)
)
row format serde 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
with serdeproperties (
'separatorChar' = ',',
'quoteChar' = '\"',
'escapeChar' = '\\'
)
stored as textfile
location 's3://';
预期成绩:
- 字段a:一些“文本”
- 字段 b:更多文本
- 字段 c:更多、文本
- 字段 d:以及更多
实际结果:
- 字段a:
null
- 字段 b:更多文本
- 字段 c:更多、文本
- 字段 d:以及更多
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)