雪花中的动态舞台路径



我有一个阶段路径,如下

copy into table1 as (
select $1:InvestorID::varchar as Investor_ID from  @company_stage/pbook/2022-03-10/Invor/part-00000-33cbc68b-69c1-40c0-943c-f586dfab3f49-c000.snappy.parquet
)

这是我的S3位置company_stage/pbook/2022-03-10/Invor

我需要使这个动态:

I( 我需要改变这个";2022-03-10";文件夹到当前日期

II( 它必须自动获取文件夹中的所有镶木地板文件,而不需要我提及文件名。如何做到这一点?

这里有一种方法。你的舞台不应该把日期作为舞台名称的一部分,因为如果有,你每天都需要一个新的舞台。最好将阶段定义为company_stage/pbook/

为了使其具有动态性,我建议将pattern选项与COPY INTO命令一起使用。您可以使用current_date((创建一个带有regex模式表达式的变量,如下所示:

set mypattern = '.*'||to_char(current_date(), 'YYYY-MM-DD')||'.*';

然后在COPY INTO命令中使用此变量,如下所示:

copy into table1 as (
select $1:InvestorID::varchar as Investor_ID from  @company_stage/pbook/ pattern = $mypattern
)

当然,你可以根据自己的喜好调整你的图案搭配。

最新更新