2016-02-29 64 views
0

我试图插入像行:COPY命令无法日期复制到红移

2016/02/03,name,12345,34,... 

我试图但是我得到一个类型不匹配复制S3文件像这样

copy events 
from 's3://dailyevents/eventdata/l/'' 
credentials 'aws_access_key_id=<access-key-id>;aws_secret_access_key=<secret-access-key>' 
CSV 
DATEFORMAT AS 'YYYY/MM/DD'; 

作为其解释2016/02/03的错误为3个单独的值。

Invalid digit, Value 'n', Pos 3, Type: Integer 

我怎样才能解析第一列作为日期格式?

回答

1

复制命令还需要列列表以及它将列解析为日期。

copy events 
(event_date, event_name,event_id,cost) 
from 's3://dailyevents/eventdata/l/'' 
credentials 'aws_access_key_id=<access-key-id>;aws_secret_access_key=<secret-access-key>' 
CSV 
DATEFORMAT AS 'YYYY/MM/DD'; 

工作。

+0

啊!看来列名告诉它期望什么类型的字段,因此它知道何时将字符串解析为日期。干得好! –