如何使用"aws_s3"从RDS / Aurora导出到S3.Query_export_to_s3



尝试运行

SELECT
*
FROM 
aws_s3.query_export_to_s3(
'SELECT * FROM <tbl> WHERE <cond>',
aws_commons.create_s3_uri(
'<bucket_name>',
'<file_name>',
'<region>'
),
options :='format csv, HEADER true, delimiter $$t$$'
)
;

自定义分隔符规范遵循AWS文档https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/postgresql-s3-export.html postgresql-s3-export-examples-custom-delimiter

由于ERROR: COPY delimiter must be a single one-byte character的原因,无法导出查询中提供的tab分隔符遵循PostgresCOPY命令

任何想法?

你可以使用E " t ",它可以工作,见下面的代码

SELECT * from aws_s3.query_export_to_s3('select * from tb', 
aws_commons.create_s3_uri('s3-bucket', 'data.csv', 'us-east-1'),  
options :='format csv, HEADER true, delimiter E''t'' '
);

rows_uploaded | files_uploaded | bytes_uploaded 
---------------+----------------+----------------
2 |              1 |             21
(1 row)

最新更新