TABLES 视图¶
此 Account Usage 视图显示账户中每个表和视图的一行。
- 另请参阅:
列¶
列名称 |
数据类型 |
描述 |
---|---|---|
TABLE_ID |
NUMBER |
Snowflake 为表生成的内部标识符。 |
TABLE_NAME |
TEXT |
表的名称。 |
TABLE_SCHEMA_ID |
NUMBER |
Snowflake 为表架构生成的内部标识符。 |
TABLE_SCHEMA |
TEXT |
表所属的架构。 |
TABLE_CATALOG_ID |
NUMBER |
Snowflake 为表数据库生成的内部标识符。 |
TABLE_CATALOG |
TEXT |
表所属的数据库。 |
TABLE_OWNER |
TEXT |
拥有表的角色的名称。 |
TABLE_TYPE |
TEXT |
指示表类型。有效值为 |
IS_TRANSIENT |
TEXT |
指示表是否为瞬态。 |
CLUSTERING_KEY |
TEXT |
构成表的群集密钥的列和/或表达式。 |
ROW_COUNT |
NUMBER |
表中的行数。 |
BYTES |
NUMBER |
通过表的扫描访问的字节数。 |
RETENTION_TIME |
NUMBER |
为 Time Travel 保留历史数据的天数。 |
SELF_REFERENCING_COLUMN_NAME |
TEXT |
不适用于 Snowflake。 |
REFERENCE_GENERATION |
TEXT |
不适用于 Snowflake。 |
USER_DEFINED_TYPE_CATALOG |
TEXT |
不适用于 Snowflake。 |
USER_DEFINED_TYPE_SCHEMA |
TEXT |
不适用于 Snowflake。 |
USER_DEFINED_TYPE_NAME |
TEXT |
不适用于 Snowflake。 |
IS_INSERTABLE_INTO |
TEXT |
不适用于 Snowflake。 |
IS_TYPED |
TEXT |
不适用于 Snowflake。 |
COMMIT_ACTION |
TEXT |
不适用于 Snowflake。 |
CREATED |
TIMESTAMP_LTZ |
创建表的日期和时间。 |
LAST_ALTERED |
TIMESTAMP_LTZ |
上次更改对象的日期和时间。请参阅 使用说明。 |
LAST_DDL |
TIMESTAMP_LTZ |
对表或视图执行的上次 DDL 操作的时间戳。 所有支持的表/视图 DDL 操作都会更新此字段:
所有 ALTER TABLE 操作都会更新此字段,包括设置或取消设置表参数(例如,COMMENT、DATA_RETENTION_TIME 等)以及对表列的更改 (ADD / MODIFY / RENAME / DROP)。 有关详细信息,请参阅 使用说明。 |
LAST_DDL_BY |
TEXT |
上次执行 DDL 操作的用户的当前用户名。如果用户已被删除,则显示 对于已删除的用户,您可以将 |
DELETED |
TIMESTAMP_LTZ |
删除表的日期和时间。 |
AUTO_CLUSTERING_ON |
TEXT |
表的自动群集的状态。有关详细信息,请参阅 查看表的自动聚类状态。 |
COMMENT |
TEXT |
为表添加注释。 |
OWNER_ROLE_TYPE |
TEXT |
拥有对象的角色类型是 |
INSTANCE_ID |
NUMBER |
对象所属实例的内部/系统生成的标识符。 |
IS_ICEBERG |
TEXT |
指示该表是否为 Iceberg 表。有效值为 |
IS_DYNAMIC |
TEXT |
指示该表是否为 动态表。有效值为 |
使用说明¶
视图的延迟时间最长可达 90 分钟。
该视图无法识别 MANAGE GRANTS 权限,因此与拥有 MANAGE GRANTS 权限的用户执行的 SHOW 命令相比,显示的信息可能更少。
查询表的
SUM(BYTES)
并不表示总存储使用情况,因为该数量不包括 Time Travel 和故障安全使用情况。对对象执行以下操作时,将更新 LAST_ALTERED 列:
DDL 操作。
DML 操作(仅适用于表)。
由 Snowflake 对元数据执行的后台维护操作。
对于视图和表,请使用 LAST_DDL 列存储上次修改对象的时间。
LAST_DDL 列中的值更新如下:
创建表或视图时,LAST_DDL 时间戳与 CREATED 时间戳相同。
删除表或视图时,LAST_DDL 时间戳与 DELETED 时间戳相同。
最后的 DDL 数据不适用于在 添加 列之前执行的操作。一直到执行 DDL 操作为止,新的 DDL 字段都包含
null
。对于复制的数据库,仅针对主要数据库中的对象更新 LAST_DDL 和 LAST_DDL_BY 字段。故障转移后,LAST_DDL 和 LAST_DDL_BY 字段将更新,以便对新提升的主要数据库中的表和视图执行 DDL 操作。对于现在的次要数据库中的对象,这些字段将保持不变。
对于在刷新操作期间新创建的次要数据库中的对象,这些字段为
null
。
示例¶
检索账户内所有架构中所有活动表的总大小(以字节为单位):
SELECT TABLE_SCHEMA,SUM(BYTES) FROM snowflake.account_usage.tables WHERE DELETED IS NULL GROUP BY TABLE_SCHEMA;