acceptanydate with dateformat 'auto' 为日期列插入空值 - Redshift

acceptanydate with dateformat 'auto' inserting nulls for a date column - Redshift

我正在尝试从具有多种日期格式的平面文件中获取 Redshift table,这会导致插入空值。我的插入命令如下所示:-

echo "COPY xxscty.daily_facebook_campaign from '${S3_BUCKET}/Society/20140701_20150315_campaign.csv' credentials as 'aws_access_key_id=${ACCESS_KEY};aws_secret_access_key=${SECRET_KEY}' acceptanydate dateformat 'auto' delimiter',' csv quote as '~' ACCEPTINVCHARS as '~' IGNOREHEADER 1"|psql "$PSQLARGS"

插入空值的原因似乎是相当零星的,因为为某些日期格式插入数据而不为其他日期格式的其他数据插入数据。

例如;日期列确实加载了

1/07/2014 (DD/MM/YYYY)

但为

插入空值

2014-07-13 (YYYY/MM/DD)

您需要使用 dateformat 'YYYY/MM/DD' 而不是 'auto'

问题是,如果您在同一个文件中有不同的格式,那么它不会复制所有日期。