DYNAMIC_TABLE_REFRESH_HISTORY¶
此表函数返回有关 动态表 每次刷新(已完成和正在运行)的信息。
此表函数返回所有正在进行的刷新以及当前时间 7 天内具有 REFRESH_VERSION 的所有刷新。
语法¶
DYNAMIC_TABLE_REFRESH_HISTORY(
[ DATA_TIMESTAMP_START => <constant_expr> ]
[ , DATA_TIMESTAMP_END => <constant_expr> ]
[ , RESULT_LIMIT => <integer> ]
[ , NAME => '<string>' ]
[ , NAME_PREFIX => '<string>' ]
[ , ERROR_ONLY => { TRUE | FALSE } ]
)
实参¶
所有实参均为可选。如果未提供任何实参,则将返回账户中所有动态表的 100 次刷新。
DATA_TIMESTAMP_START => constant_expr
、.DATA_TIMESTAMP_END => constant_expr
刷新发生的时间范围(TIMESTAMP_LTZ 格式)。
如果既未指定开始版本,也未指定结束版本,则默认范围为过去一天。
如果未指定结束版本,则 CURRENT_TIMESTAMP 将用作范围的结束。
如果未指定开始版本,则范围在 DATE_TIMESTAMP_END 开始前 1 天开始。
RESULT_LIMIT => integer
用于指定函数返回的行数上限的数字。
如果匹配的行数大于此限制,则会返回最近完成的刷新(以及仍在运行的刷新),最高不超过指定的限制。
范围:
1
至10000
默认:
100
。NAME => string
动态表的名称。
名称必须放在单引号内,并且不区分大小写。
可以指定非限定名称 (
dynamic_table_name
)、部分限定名称 (schema_name.dynamic_table_name
) 或完全限定名称 (database_name.schema_name.dynamic_table_name
)。有关对象名称解析的详细信息,请参阅 对象名称解析。
函数返回此表的刷新次数。
NAME_PREFIX => string
动态表的前缀。
前缀名称必须放在单引号内,并且不区分大小写。
该函数为名称以该前缀开头的表返回刷新。
您可以使用此实参返回特定数据库或架构中动态表的刷新次数。
ERROR_ONLY => TRUE | FALSE
设置为 TRUE 时,此函数仅返回失败或已取消的刷新次数。
输出¶
该函数返回以下列:
列名称 |
数据类型 |
描述 |
---|---|---|
NAME |
TEXT |
动态表的名称。 |
SCHEMA_NAME |
TEXT |
包含动态表的架构的名称。 |
DATABASE_NAME |
TEXT |
包含动态表的数据库的名称。 |
STATE |
TEXT |
动态表的刷新状态。状态可以是以下状态之一:
|
STATE_CODE |
TEXT |
表示刷新的当前状态的代码。 |
STATE_MESSAGE |
TEXT |
刷新的当前状态的说明。 |
QUERY_ID |
TEXT |
为动态表生成结果的 SQL 语句的 ID。 |
DATA_TIMESTAMP |
TIMESTAMP_LTZ |
评估刷新时的事务时间戳。(这可能略早于刷新的实际时间。)在该时间戳之前到达的基本对象中的所有数据当前都包含在动态表中。 |
REFRESH_START_TIME |
TIMESTAMP_LTZ |
刷新作业开始的时间。 |
REFRESH_END_TIME |
TIMESTAMP_LTZ |
刷新完成的时间。 |
COMPLETION_TARGET |
TIMESTAMP_LTZ |
为了保持动态表的滞后时间不超过 TARGET_LAG 参数,此次刷新应在此时间点前完成。等于前面的 REFRESH_VERSION + TARGET_LAG。 |
QUALIFIED_NAME |
TEXT |
动态表在动态表图形中显示的完全限定名称。您可以使用它来联接 DYNAMIC_TABLE_GRAPH_HISTORY 函数的输出。 |
LAST_COMPLETED_DEPENDENCY |
OBJECT |
包含以下属性:
|
STATISTICS |
OBJECT |
包含以下属性:
|
REFRESH_ACTION |
TEXT |
其中之一:
|
REFRESH_TRIGGER |
TEXT |
其中之一:
|
TARGET_LAG |
TEXT |
描述刷新时动态表的目标滞后值。 |
GRAPH_HISTORY_VALID_FROM |
TIMESTAMP_NTZ |
对 DYNAMIC_TABLE_GRAPH_HISTORY 表函数发生刷新时的 VALID_FROM 时间戳进行编码,以明确特定刷新对应的是动态表的哪个版本。如果尚未创建相应的动态表,该值也可以是 NULL。 |
使用说明¶
当调用 Information Schema 表函数时,会话必须具有正在使用的 INFORMATION_SCHEMA 架构,或者 函数名称必须受到完全限定。有关更多详细信息,请参阅 Snowflake Information Schema。
示例¶
检索失败或取消的刷新:
SELECT name, state, state_code, state_message, query_id, data_timestamp, refresh_start_time, refresh_end_time FROM TABLE ( INFORMATION_SCHEMA.DYNAMIC_TABLE_REFRESH_HISTORY ( NAME_PREFIX => 'MYDB.MYSCHEMA.', ERROR_ONLY => TRUE ) ) ORDER BY name, data_timestamp;