在雪花存储过程中设置变量,并在与复制模式相同的过程中使用它



我正在尝试创建一个存储过程,以便从外部阶段(s3 bucket(进行复制,并使用模式作为文件名。该模式基于连接的当前日期,但我需要设置一个变量用作模式。有可能做这样的事吗?

CREATE OR REPLACE PROCEDURE test_copy()
RETURNS STRING
LANGUAGE JAVASCRIPT    
EXECUTE AS CALLER
AS
$$
SET my_Date=(select concat('.*', regexp_replace(current_date(),'-',''), '.*.parquet' );
var sql_command = '
COPY INTO table1
FROM '@s3bucket'  
(file_format  => PARQUET, pattern=>$my_Date) 
);
'
snowflake.execute(
{
sqlText: sql_command
});
return "Successfully executed.";
$$;

既然可以用javascript生成当前日期,为什么不纯粹用javascript创建my_date呢?

然后,您需要通过将所需的字符串和变量连接到来创建sql_command

相关内容

最新更新