我正在尝试从Redshift中的csv在Redshift中创建一个外部表,如rfc4180中所述:
如果使用双引号将字段括起来,则使用双引号 出现在字段中的内容必须先在另一个字段之前转义 双引号。
例如:“ aaa”,“ b”,“ bb”,“ ccc”
我没有收到任何错误,但是决赛桌在我的字符串应有的地方有一个null
值。
创建外部表时,有没有办法告诉Redshift理解这种csv格式?
我不想要更改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://';
预期结果:
实际结果:
null