Snowflake cloud data platform “如何筛选”;“显示表格”;

Snowflake cloud data platform “如何筛选”;“显示表格”;,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,我想过滤show tables的输出。 文档中介绍了如何使用结果扫描(last\u query\u id())执行此操作,但对我来说,该示例不起作用: show tables; select "schema_name", "name" as "table_name", "rows" from table(result_scan(last_query_id())) where "rows" = 0; -- SQL compilation error: error line 1 a

我想过滤
show tables
的输出。 文档中介绍了如何使用
结果扫描(last\u query\u id())
执行此操作,但对我来说,该示例不起作用:

show tables;
select  "schema_name", "name" as "table_name", "rows"
    from table(result_scan(last_query_id()))
    where "rows" = 0;
-- SQL compilation error: error line 1 at position 8 invalid identifier 'SCHEMA_NAME'
SCHEMA\u NAME
实际上在
show tables
的输出中, 所以我不明白是什么错了

最好的


Davide

您可以使用
$
语法(行为8)引用筛选器列

例如:

show tables;
select *
from table(result_scan())
where $8 > 5

也就是说,您的查询对我有效。

您可以使用
$
语法(行为8)引用筛选器列

例如:

show tables;
select *
from table(result_scan())
where $8 > 5

话虽如此,您的查询对我有效。

在您的帐户上运行以下命令,看看它设置为什么:

show parameters like 'QUOTED_IDENTIFIERS_IGNORE_CASE';
如果设置为TRUE,则忽略查询中的引号,这将使列名大写,而列名与显示输出的小写名称不匹配

要为自己的会话解析,可以运行以下操作:

ALTER SESSION SET QUOTED_IDENTIFIERS_IGNORE_CASE = False;

如果愿意,您还可以在用户或帐户级别更改此设置。由于您正在运行的原因,不建议将此值设置为TRUE。

在您的帐户上运行以下命令,然后查看它设置为什么:

show parameters like 'QUOTED_IDENTIFIERS_IGNORE_CASE';
如果设置为TRUE,则忽略查询中的引号,这将使列名大写,而列名与显示输出的小写名称不匹配

要为自己的会话解析,可以运行以下操作:

ALTER SESSION SET QUOTED_IDENTIFIERS_IGNORE_CASE = False;

如果愿意,您还可以在用户或帐户级别更改此设置。不建议将此值设置为TRUE,因为您正遇到此问题。

您的代码适合我。您是否总是连续运行这两个报表?您能否共享您的帐户所在地(例如AWS West)?上面的查询应该适用于您,也适用于其他人,但可能有一个问题需要报告给雪花支持。@waldente是的,我连续运行这两个语句@MikeWalton,该账户位于
us-east-1
。设置
QUOTED\u IDENTIFIERS\u IGNORE\u CASE=False的解决方案工作起来很有魅力。非常感谢。你的代码对我有用。您是否总是连续运行这两个报表?您能否共享您的帐户所在地(例如AWS West)?上面的查询应该适用于您,也适用于其他人,但可能有一个问题需要报告给雪花支持。@waldente是的,我连续运行这两个语句@MikeWalton,该账户位于
us-east-1
。设置
QUOTED\u IDENTIFIERS\u IGNORE\u CASE=False的解决方案工作起来很有魅力。非常感谢。