"copy into" 语句中的参数化路径?

Parameterized path in "copy into" statement?

有没有办法参数化 Snowflake 的 SQL 中的 copy into 语句使用的路径?我想做一些事情,例如:copy into @temp_int_stage/test_$v from ...,其中 $v 是一个 SQL 变量。

实现此目的的最佳方法是通过 Snowflake 存储过程。但是,您不能直接使用 SQL 语句中的变量来执行此操作。

如果您使用任何编程接口将文件从阶段加载到最终目标 table,您可以做到。我们正在使用 python 脚本将我们的数据从雪花阶段加载到目标 table。复制命令文件路径将被参数化的位置。

否则,您可以在雪花存储过程中使用。不知道有没有办法直接执行

你可以在snowsql中定义变量。为此,您必须启用变量替换。稍后您可以将变量与 & 运算符

一起使用
!define val = yourvalue
!set variable_substitution=True
copy into @temp_int_stage/test_&val from ..