SQL 中的 Snowflake 脚本 - 如何迭代 SHOW 命令的结果?

Snowflake Scripting in SQL - how to iterate over the results of a SHOW command?

我正在查看新的 SQL Snowflake Scripting(预览版),但我不知道如何迭代 SHOW 命令的结果——尤其是某些专栏是小写的。

您可以使用此示例作为模板来迭代 SHOW:

的结果
declare
  res RESULTSET default (show warehouses);
  vw_cursor CURSOR for res;
  vw_table RESULTSET ;
begin
  for vw in vw_cursor do
    vw_table := (execute immediate 'show parameters like ' || '''STATEMENT_TIMEOUT_IN_SECONDS''' || ' in warehouse ' || vw."name");
    return TABLE(vw_table) ;
  end for;
end;

首先,请注意,您可以从 declare 部分的 show 获得 resultset - 这让生活变得轻松。

然后你可以用光标遍历每一行for vw in vw_cursor do

然后您可以 execute immediate 其他查询,但请确保引用 " 以获取 lower-cased 列,如 vw."name".