我在 Redshift 有一份工作,负责每月从 S3 中提取 6 个文件。文件名遵循标准命名约定“file_label_MonthNameYYYY_Batch01.CSV”。我想修改下面的 COPY 命令来动态更改 S3 目录中的文件命名,这样我就不必硬编码月份名称和 YYYY 以及批号。批号范围为 1-6。
目前,这是我所拥有的效率不高的:
COPY tbl_name ( column_name1,column_name2,column_name3 )
FROM 'S3://bucket_name/folder_name/Static_File_Label_July2021_Batch01.CSV'
CREDENTIALS 'aws_access_key_id = xxx;aws_secret_access_key = xxxxx'
removequotes
EMPTYAsnULL
BLANKSAsnULL
DATEFORMAT 'MM/DD/YYYY'
delimiter ','
IGNOREHEADER 1;
COPY tbl_name ( column_name1,column_name3 )
FROM 'S3://bucket_name/folder_name/Static_File_Label_July2021_Batch02.CSV'
CREDENTIALS 'aws_access_key_id = xxx;aws_secret_access_key = xxxxx'
removequotes
EMPTYAsnULL
BLANKSAsnULL
DATEFORMAT 'MM/DD/YYYY'
delimiter ','
IGNOREHEADER 1;
下个月动态文件名将更改为August2021_Batch01 & August2021_Batch02,依此类推。有没有办法做到这一点?提前致谢。