在雪花任务中执行多行
Posted
技术标签:
【中文标题】在雪花任务中执行多行【英文标题】:Executing Multiple Lines in a Snowflake Task 【发布时间】:2020-03-16 13:14:35 【问题描述】:我创建了下面的任务,但无法让它执行所有行。看起来它只是从 productweekly_upload 第一次删除然后完成。有人有想法么?这是我第一次使用任务
CREATE OR REPLACE TASK WeeklySymphony_Load
WAREHOUSE = UPLOADWAREHOUSE
SCHEDULE = 'USING CRON 10 8 * * MON America/New_York'
as
--run every monday at 8:10 am
delete from Productweekly_Upload;
delete from Factsweekly_Upload;
delete from Productweekly;
delete from Factsweekly;
copy into ProductWeekly_Upload
from @symphony_s3_stage/prasco_phast_it_prdct_wk_;
copy into FactsWeekly_Upload
from @symphony_s3_stage/prasco_phast_it_wk_;
insert into ProductWeekly
select * from ProductWeekly_Upload;
insert into FactsWeekly
select * from FactsWeekly_Upload;
【问题讨论】:
【参考方案1】:您只能在一个 TASK 中执行 1 个命令。如果要创建多个步骤,可以将它们包装到存储过程中并从 TASK 调用 SP,也可以将每个步骤创建为 TASK 并建立这些依赖关系,以便它们按顺序执行。
我建议通读本文档:
https://docs.snowflake.com/en/user-guide/tasks-intro.html
【讨论】:
Snowflake 存储过程看起来像一团糟——我可能会采取简单的方法,只用一行代码创建 6 个不同的任务。 Snowflake SP 只是 javascript。容易。以上是关于在雪花任务中执行多行的主要内容,如果未能解决你的问题,请参考以下文章