CTAS COPY INTO 的输出

CTAS the output from COPY INTO

copy into命令returnsan output dataset

CTAS 可以根据查询结果创建 table。

将两者结合起来,我们希望将加载的文件列表放入一个新的 table.

CREATE TABLE MY_LOADED_FILES
AS
COPY INTO mytable
FROM @my_int_stage;

但是,这个 returns:

SQL compilation error: syntax error line 3 at position 0 unexpected 'copy'.

我做错了什么?

不幸的是,您似乎不能将 COPY INTO 语句放在另一个语句中。但是,有一种方法可以通过使用 result_scan 函数来 return 先前查询的结果。

copy into test_database.public.test_table from @my_int_stage;

create temporary table test_database.public.test_table_results as (
  select * from table(result_scan(LAST_QUERY_ID()))
);

当然你需要确保第二个查询 运行s 在与复制语句相同的会话中,并且它是 运行 直接在复制语句之后。或者,您可以将查询 ID 与 result_scan.

一起使用

如果您想查看加载了哪些文件,为什么不直接查看 table 的 copy_history