【发布时间】:2020-09-23 13:50:09
【问题描述】:
我想通过复制指令将一个临时表从 S3 加载到 Redshift,然后选择一些字段并创建一个最终表,但我不知道如何在不知道所有结构的情况下从 s3 加载文件。
让我用一个例子来解释:
我的文件在 s3 中
col1 col2 col3
a 1 b
b 4 c
我想要一个只有 col2 的决赛桌,所以我执行以下操作:
CREATE TEMPORARY TABLE stg(col1 varchar, col2 integer, col3 varchar);
COPY stg FROM myfile
CREDENTIALS
'aws_access_key_id=***;aws_secret_access_key=***'
NULL as '' IGNOREHEADER AS 1
;
create table FINAL as
select
col2
from stg
我想要这样的东西(所以我不需要知道结构,只知道它会有 col2):
CREATE TEMPORARY TABLE stg as (
COPY stg FROM myfile
CREDENTIALS
'aws_access_key_id=***;aws_secret_access_key=***'
NULL as '' IGNOREHEADER AS 1
);
create table FINAL as
select
col2
from stg
【问题讨论】:
标签: amazon-web-services amazon-s3 copy amazon-redshift