SHOW SEMANTIC VIEWS

列出您具有访问权限的 语义视图。您可以列出当前或指定架构的视图。

输出返回视图元数据和属性,根据数据库、架构和语义视图名称按字典顺序排序。如果您要使用提供的筛选器筛选结果,请务必注意这一点。

另请参阅:

CREATE SEMANTIC VIEW , ALTER SEMANTIC VIEW , DESCRIBE SEMANTIC VIEW , DROP SEMANTIC VIEW , SHOW SEMANTIC DIMENSIONS , SHOW SEMANTIC DIMENSIONS FOR METRIC , SHOW SEMANTIC FACTS , SHOW SEMANTIC METRICS

语法

SHOW [ TERSE ] SEMANTIC VIEWS [ LIKE '<pattern>' ]
  [ IN
       {
         ACCOUNT                                         |

         DATABASE                                        |
         DATABASE <database_name>                        |

         SCHEMA                                          |
         SCHEMA <schema_name>                            |
         <schema_name>
       }
  ]
  [ STARTS WITH '<name_string>' ]
  [ LIMIT <rows> [ FROM '<name_string>' ] ]
Copy

参数

TERSE

仅返回输出列的子集:

  • created_on

  • name

  • kind

    kind 列值始终为 SEMANTIC_VIEW

  • database_name

  • schema_name

默认:无值(所有列都包含在输出中)

LIKE 'pattern'

(可选)按对象名称筛选命令输出。筛选器使用 不区分大小写 的模式匹配,并支持 SQL 通配符(%_)。

例如,以下模式返回 相同的 结果:

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

. 默认:无值(不对输出应用筛选)。

[ IN ... ]

(可选)指定命令的作用域。指定以下任一项:

ACCOUNT

返回整个账户的记录。

DATABASE. DATABASE db_name

返回当前正在使用的数据库或指定数据库 (db_name) 的记录。

如果指定 DATABASE 而不指定 db_name,并且没有使用任何数据库,则关键字对输出没有影响。

备注

在数据库上下文中使用不带 IN 子句的 SHOW 命令,这样可能会导致结果低于预期。

如果不使用 IN 子句,则具有相同名称的多个对象只会显示一次。例如,如果您在 schema1 中具有表 t1 且在 schema2 中具有表 t1,并且两者都在您指定的数据库上下文的作用域内(即,您所选的数据库是 schema1schema2 的父级),则 SHOW TABLES 只会显示其中一个 t1 表。

SCHEMA. SCHEMA schema_name

返回当前正在使用的架构或指定架构 (schema_name) 的记录。

如果数据库正在使用中,或者指定了完全限定 schema_name (例如 db.schema),则 SCHEMA 是可选选项。

如果未使用任何数据库,则指定 SCHEMA 对输出没有影响。

If you omit IN ..., the scope of the command depends on whether the session currently has a database in use:

  • If a database is currently in use, the command returns the objects you have privileges to view in the database. This has the same effect as specifiying IN DATABASE.

  • If no database is currently in use, the command returns the objects you have privileges to view in your account. This has the same effect as specifiying IN ACCOUNT.

STARTS WITH 'name_string'

(可选)根据对象名称开头显示的字符筛选命令输出。该字符串必须放在单引号内并且 区分大小写

例如,以下字符串会返回 不同的 结果:

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...

. 默认:无值(不对输出应用筛选)

LIMIT rows [ FROM 'name_string' ]

(可选)限制返回的最大行数,同时还对结果启用“分页”功能。返回的实际行数可能小于指定的限制。例如,现有对象的数量小于指定的限制。

可选的 FROM 'name_string' 分子句实际上会充当结果的“游标”。这样就可以提取对象名称与指定字符串匹配的第一行之后的指定行数:

  • 该字符串必须放在单引号内并且 区分大小写

  • 该字符串不必包含完整的对象名称;支持部分名称。

默认:无值(不对输出应用限制)

备注

对于支持 FROM 'name_string'STARTS WITH 'name_string' 的 SHOW 子句,您可以将这两个子句组合在同一语句中。但是,两个条件都必须满足,否则它们相互抵消,不返回任何结果。

此外,对象按名称的字典顺序返回,因此 FROM 'name_string' 仅返回字典值高于 STARTS WITH 'name_string' 所返回行的行。

例如:

  • ... STARTS WITH 'A' LIMIT ... FROM 'B' 不会返回任何结果。

  • ... STARTS WITH 'B' LIMIT ... FROM 'A' 不会返回任何结果。

  • ... STARTS WITH 'A' LIMIT ... FROM 'AB' 将返回结果(如果有任何行与输入字符串匹配)。

输出

命令输出在以下列中提供语义视图属性和元数据:

描述

created_on

创建语义视图的日期和时间。

name

语义视图的名称。

kind

视图类型。始终为 SEMANTIC_VIEW

仅当您指定 TERSE 时,此列才会出现在输出中。

database_name

用于存储语义视图的数据库。

schema_name

用于存储语义视图的架构。

comment

关于语义视图的注释。

owner

拥有语义视图的角色。

owner_role_type

拥有对象的角色类型,例如 ROLE. 如果 Snowflake Native App 拥有该对象,则该值为 APPLICATION. 如果您删除该对象,则 Snowflake 会返回 NULL,原因是删除的对象不具有所有者角色。

访问控制要求

用于执行此 SQL 命令的 角色 必须至少具有以下 一项 权限

权限

对象

备注

REFERENCES

语义视图

OWNERSHIP

语义视图

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

要对架构中的任何对象执行操作,需要对父数据库和架构的 USAGE 权限。请注意,如果某个角色获授某个架构的任意权限,该角色便能够解析该架构。例如,若某角色被授予 CREATE 权限,则可以在该架构上创建对象,而无需 同时 被授予该架构的 USAGE 权限。

有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色

有关对 安全对象 执行 SQL 操作的相应角色和权限授予的一般信息,请参阅 访问控制概述

使用说明

  • 该命令 最多 返回指定对象类型的 1 万条记录,由用于执行命令的角色的访问权限决定。即使应用了筛选器,也不会返回任何超出 1 万条限制后的记录。

    要查看存在超过 1 万条记录的结果,请在 Snowflake Information Schema 中查询相应的视图(如果存在)。

示例

以下示例列出了数据库中当前正在使用的语义视图:

SHOW SEMANTIC VIEWS;
Copy
+-------------------------------+----------------------+---------------+-------------+---------+---------+-----------------+-----------+
| created_on                    | name                 | database_name | schema_name | comment | owner   | owner_role_type | extension |
|-------------------------------+----------------------+---------------+-------------+---------+---------+-----------------+-----------+
| 2025-04-10 08:29:02.732 -0700 | MY_SEMANTIC_VIEW_1   | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:29:21.117 -0700 | MY_SEMANTIC_VIEW_2   | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:29:38.040 -0700 | MY_SEMANTIC_VIEW_3   | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:33.161 -0700 | MY_SEMANTIC_VIEW_4   | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:46.294 -0700 | MY_SEMANTIC_VIEW_5   | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:58.480 -0700 | MY_SEMANTIC_VIEW_6   | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-02-28 16:16:04.002 -0800 | O_TPCH_SEMANTIC_VIEW | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-03-21 07:03:54.120 -0700 | TPCH_REV_ANALYSIS    | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
+-------------------------------+----------------------+---------------+-------------+---------+---------+-----------------+-----------+

以下示例仅包含输出列的子集:

SHOW TERSE SEMANTIC VIEWS;
Copy
+-------------------------------+-----------------------+---------------+---------------+-------------------+
| created_on                    | name                  | kind          | database_name | schema_name       |
|-------------------------------+-----------------------+---------------+---------------+-------------------|
| 2025-04-10 08:29:02.732 -0700 | MY_SEMANTIC_VIEW_1    | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
| 2025-04-10 08:29:21.117 -0700 | MY_SEMANTIC_VIEW_2    | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
| 2025-04-10 08:29:38.040 -0700 | MY_SEMANTIC_VIEW_3    | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
| 2025-04-10 08:47:33.161 -0700 | MY_SEMANTIC_VIEW_4    | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
| 2025-04-10 08:47:46.294 -0700 | MY_SEMANTIC_VIEW_5    | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
| 2025-04-10 08:47:58.480 -0700 | MY_SEMANTIC_VIEW_6    | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
| 2025-02-28 16:16:04.002 -0800 | O_TPCH_SEMANTIC_VIEW  | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
| 2025-03-21 07:03:54.120 -0700 | TPCH_REV_ANALYSIS     | SEMANTIC_VIEW | MY_DB         | MY_SCHEMA         |
+-------------------------------+-----------------------+---------------+---------------+-------------------+

以下示例显示名称包含字符串 tpch 的语义视图:

SHOW SEMANTIC VIEWS LIKE '%tpch%';
Copy
+-------------------------------+----------------------+---------------+-------------+---------+---------+-----------------+-----------+
| created_on                    | name                 | database_name | schema_name | comment | owner   | owner_role_type | extension |
|-------------------------------+----------------------+---------------+-------------+---------+---------+-----------------+-----------|
| 2025-02-28 16:16:04.002 -0800 | O_TPCH_SEMANTIC_VIEW | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-03-21 07:03:54.120 -0700 | TPCH_REV_ANALYSIS    | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
+-------------------------------+----------------------+---------------+-------------+---------+---------+-----------------+-----------+

以下示例显示了名称以 MY_SEMANTIC_VIEW 开头的语义视图:

SHOW SEMANTIC VIEWS STARTS WITH 'MY_SEMANTIC_VIEW';
Copy
+-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------+
| created_on                    | name               | database_name | schema_name | comment | owner   | owner_role_type | extension |
|-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------|
| 2025-04-10 08:29:02.732 -0700 | MY_SEMANTIC_VIEW_1 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:29:21.117 -0700 | MY_SEMANTIC_VIEW_2 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:29:38.040 -0700 | MY_SEMANTIC_VIEW_3 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:33.161 -0700 | MY_SEMANTIC_VIEW_4 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:46.294 -0700 | MY_SEMANTIC_VIEW_5 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:58.480 -0700 | MY_SEMANTIC_VIEW_6 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
+-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------+

以下示例显示了名称以 MY_SEMANTIC_VIEW 开头的前三个语义视图:

SHOW SEMANTIC VIEWS STARTS WITH 'MY_SEMANTIC_VIEW' LIMIT 3;
Copy
+-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------+
| created_on                    | name               | database_name | schema_name | comment | owner   | owner_role_type | extension |
|-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------|
| 2025-04-10 08:29:02.732 -0700 | MY_SEMANTIC_VIEW_1 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:29:21.117 -0700 | MY_SEMANTIC_VIEW_2 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:29:38.040 -0700 | MY_SEMANTIC_VIEW_3 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
+-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------+

以下示例显示了三个语义视图,其名称以名为 MY_SEMANTIC_VIEW_3MY_SEMANTIC_VIEW 视图开头:

SHOW SEMANTIC VIEWS STARTS WITH 'MY_SEMANTIC_VIEW' LIMIT 3 FROM 'MY_SEMANTIC_VIEW_3';
Copy
+-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------+
| created_on                    | name               | database_name | schema_name | comment | owner   | owner_role_type | extension |
|-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------|
| 2025-04-10 08:47:33.161 -0700 | MY_SEMANTIC_VIEW_4 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:46.294 -0700 | MY_SEMANTIC_VIEW_5 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
| 2025-04-10 08:47:58.480 -0700 | MY_SEMANTIC_VIEW_6 | MY_DB         | MY_SCHEMA   |         | MY_ROLE | ROLE            | NULL      |
+-------------------------------+--------------------+---------------+-------------+---------+---------+-----------------+-----------+
语言: 中文