错误:在雪花过程中将变量输出分配给其他变量

时间:2021-04-20 08:22:14

标签: variables stored-procedures snowflake-cloud-data-platform

在一个过程中,我正在调用另一个过程,其中结果分配给 df%>% mutate(year2= year(dmy(paste0("01-",month))))%>% # getting to char date->year select(-month)%>% # removing since redundant. group_by(year2,self_impact)%>% summarise(impacted_family = sum(as.numeric(impacted_family)), self_impact2 = n())%>% # summarizing the data ungroup()%>% ggplot()+ aes(as.factor(year2),impacted_family)+ geom_col(color=NA)+ facet_wrap(~self_impact) 变量,内部过程的输出为 P_DATALAKEPATH,我试图拆分值并分配给 {{ 1}} 变量,它给出了一个错误。请帮忙

READ|WRITE|UPDATE

2 个答案:

答案 0 :(得分:1)

您在代码中混合使用 JavaScript 和 SQL。这是 SQL:

set MY_VAR=SPLIT_PART(P_DATALAKEPATH,'|',1);

需要使用JavaScript对P_DATALAKEPATH的值进行拆分,得到第一个值:

var MY_VAR = P_DATALAKEPATH.split("|")[0];

答案 1 :(得分:1)

如果输出变量的数量是可预测的,我建议不要将多个值放在一个字符串中,而是像您尝试做的那样通过在 JS 中解析字符串来将它们分开。

既然您的 SQL 生成了一个表,而不是将所有内容放在带有管道分隔符的一列中,为什么不在输出中创建几列并使用 rs.getColumnValue(1)rs.getColumnValue(2) 将它们返回到您的 SP, rs.getColumnValue(3) 等?

相关问题