使用NaN将CSV数据加载到AWS Redshift中

时间:2014-05-15 18:54:12

标签: csv amazon-web-services amazon-redshift

我正在尝试将AWS S3中的CSV文件加载到AWS Redshift中。 CSV文件包含如下行:

  

15,NaN时,0

该表是通过以下方式创建的:

  

CREATE TABLE foo(INT,b DOUBLE PRECISION,c INT);

我正在尝试使用COPY命令加载表:

  

COPY foo(a,b,c)FROM“s3://”CREDENTIALS ... CSV;

我抱怨错误:

  

无效的数字值'N'

尝试通过INSERT语句手动加载相同的行可以正常工作:

  

INSERT INTO foo(a,b,c)VALUES(15,'NaN',0);

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:5)

如果你想做的话,你需要告诉Redshift将NaN加载为NULL。

例如:

COPY foo from 's3://xxx' credentials 'xxxx' DELIMETER AS ',' NULL 'NaN';

这应该成功执行并在表中插入NULL而不是NaN。