" UNLOAD"来自AWS Redshift的数据表,使其可以CSV格式读取

时间:2017-01-03 16:09:36

标签: sql amazon-web-services export-to-csv amazon-redshift

我目前正在尝试将当前AWS实例的redshift数据库中的多个数据表移动到另一个AWS实例中的新数据库(对于后台我的公司已经获得了一个新的数据表,我们需要合并到实例上of AWS)。

我在桌面上使用下面的UNLOAD命令,我计划将该表格设为csv,然后将该文件上传到目标AWS' S3并使用COPY命令完成移动表。

unload ('select * from table1')
to 's3://destination_folder' 
CREDENTIALS  'aws_access_key_id=XXXXXXXXXXXXX;aws_secret_access_key=XXXXXXXXX'
ADDQUOTES
DELIMITER AS ','
PARALLEL OFF;

我的问题是,当我将文件类型更改为.csv并打开文件时,我会发现数据不一致。有些区域会跳过很多行,而在某些行上,当预期的列结束时,我得到的值为" f"原因不明。任何有关如何实现此转移的帮助将不胜感激。

编辑1:看起来带引号的字段已删除引号。另外,带逗号的字段将逗号分隔开。我已经用引号和逗号识别了一些字段,他们正在抛弃一切。无论在字段中是否有引号和逗号,addquotes子句是否适用于整个字段?

1 个答案:

答案 0 :(得分:0)

默认文档的扩展名为txt且带引号。尝试用Excel打开它,然后另存为csv文件。 参考https://help.xero.com/Q_ConvertTXT