私はこのCSVファイルを持っています:
reference,address
V7T452F4H9,"12410 W 62TH ST, AA D"
次のオプションがテーブル定義で使用されています
ROW FORMAT SERDE
'org.Apache.hadoop.Hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
'quoteChar'='\"',
'separatorChar'=',')
ただし、それでもデータ内の二重引用符は認識されず、二重引用符フィールド内のそのコンマがデータを台無しにしています。 Athenaクエリを実行すると、結果は次のようになります。
reference address
V7T452F4H9 "12410 W 62TH ST
この問題を修正するにはどうすればよいですか?
escapeChar
も追加する必要があるようです。 AWS Athena docs はこの例を示しています:
CREATE EXTERNAL TABLE myopencsvtable (
col1 string,
col2 string,
col3 string,
col4 string
)
ROW FORMAT SERDE
'org.Apache.hadoop.Hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
'separatorChar' = ',',
'quoteChar' = '\"',
'escapeChar' = '\\'
)
STORED AS TEXTFILE
LOCATION 's3://location/of/csv/';