如何阅读雅典娜中的转义字符
how to read escape character in Athena
您好,我在 Athena 中使用以下查询创建了一个 table,它将读取 S3 中的 csv 文件。
CREATE EXTERNAL TABLE IF NOT EXISTS axlargetable.AEGIntJnlTblStaging (
`filename` string,
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
'separatorChar' = ',',
'quoteChar' = '\"'
)
LOCATION 's3://ax-large-table/AEGIntJnlTblStaging/'
TBLPROPERTIES ('has_encrypted_data'='false');
但是文件名中的值像 "\emdc1fas\HR_UK\ADPFreedom_Employee_20141114_11.04.00.csv"
当我阅读这篇文章时 table 我的价值观看起来像
"\emdc1fasHR_UKADPFreedom_Employee_20141114_11.04.00.csv"
我从值中遗漏了所有转义字符(反斜杠)。
我如何读取将显示带转义字符的实际值的值。
谢谢
只要不需要转义,可以将转义字符设置为无关的字符(例如"|"
)。
CREATE EXTERNAL TABLE IF NOT EXISTS axlargetable.AEGIntJnlTblStaging (
filename string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
'separatorChar' = ',',
'quoteChar' = '\"',
'escapeChar' = '|'
)
LOCATION 's3://ax-large-table/AEGIntJnlTblStaging/'
TBLPROPERTIES ('has_encrypted_data'='false');
您好,我在 Athena 中使用以下查询创建了一个 table,它将读取 S3 中的 csv 文件。
CREATE EXTERNAL TABLE IF NOT EXISTS axlargetable.AEGIntJnlTblStaging (
`filename` string,
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
'separatorChar' = ',',
'quoteChar' = '\"'
)
LOCATION 's3://ax-large-table/AEGIntJnlTblStaging/'
TBLPROPERTIES ('has_encrypted_data'='false');
但是文件名中的值像 "\emdc1fas\HR_UK\ADPFreedom_Employee_20141114_11.04.00.csv"
当我阅读这篇文章时 table 我的价值观看起来像
"\emdc1fasHR_UKADPFreedom_Employee_20141114_11.04.00.csv"
我从值中遗漏了所有转义字符(反斜杠)。
我如何读取将显示带转义字符的实际值的值。
谢谢
只要不需要转义,可以将转义字符设置为无关的字符(例如"|"
)。
CREATE EXTERNAL TABLE IF NOT EXISTS axlargetable.AEGIntJnlTblStaging (
filename string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
'separatorChar' = ',',
'quoteChar' = '\"',
'escapeChar' = '|'
)
LOCATION 's3://ax-large-table/AEGIntJnlTblStaging/'
TBLPROPERTIES ('has_encrypted_data'='false');