提问者:小点点

在Snowflake中将多个JSON文件从stage加载到表


我有几百个文件在内部命名阶段,我需要移动到雪花表。在处于阶段的文件名称中有一个模式,

file1.json
file2.json
file3.json
...

我正在尝试创建一个查询,该查询将一次性加载目标表中的所有文件,因为我们可以在SQL中使用带有*的PUT命令。我正在尝试将以下副本运行到查询中,但结果显示为

复制已执行,已处理0个文件。

我想问的问题是

copy into test_table (file_name, load_date, data) from (
    select
        metadata$filename,
        current_timestamp,
        f.$1
    from @stagename/file*.json f
)
    file_format = (
        type = json
            strip_outer_array = true
        )
    force=true ;

对此有什么建议吗?谢啦


共1个答案

匿名用户

您没有正确使用该模式,它需要如下所示:

select metadata$filename, current_timestamp, f.$1 from @stagename (file_format => 'myformat', pattern=>'file.*[.]json') f;