TAG_REFERENCES¶
返回一个表,其中每行显示标记和值之间的关联。
关联的标记和值是与对象直接关联或通过标记世系关联的结果。
语法¶
TAG_REFERENCES( '<object_name>' , '<object_domain>' )
实参¶
'object_name'
如果标签关联位于对象上,则为引用对象的名称。
'object_domain'
引用对象(如表或视图)的域(如果标签关联位于对象上)。对于列,如果标签关联位于列上,则域为
COLUMN
域。使用以下值之一:
'ACCOUNT'
'ALERT'
'COLUMN'
'DATABASE'
'DATABASE ROLE'
'FUNCTION'
'INTEGRATION'
'NETWORK POLICY'
'PROCEDURE'
'ROLE'
'SCHEMA'
'SHARE'
'STAGE'
'STREAM'
'TABLE'
:将此值用于所有类似表的对象,例如视图、物化视图和外部表。'TASK'
'USER'
'WAREHOUSE'
使用说明¶
仅对有权访问指定对象的角色返回结果。
要查看 系统标签 的引用,请使用具有共享 SNOWFLAKE 数据库的 IMPORTED PRIVILEGES 的角色。
当调用 Information Schema 表函数时,会话必须具有正在使用的 INFORMATION_SCHEMA 架构,或者 函数必须使用完全限定的对象名称。有关更多详细信息,请参阅 Snowflake Information Schema。
输出¶
该函数返回以下列:
列 |
数据类型 |
描述 |
---|---|---|
TAG_DATABASE |
TEXT |
在其中设置标签的数据库。 |
TAG_SCHEMA |
TEXT |
在其中设置标签的架构。 |
TAG_NAME |
TEXT |
标签的名称。这是标签的 |
TAG_VALUE |
TEXT |
标签的值。这是标签的 |
LEVEL |
TEXT |
在上面设置标签的对象域。 |
OBJECT_DATABASE |
TEXT |
数据库和架构对象的引用对象的数据库名称。如果对象不是数据库或架构对象,则该值为空。 |
OBJECT_SCHEMA |
TEXT |
引用对象的架构名称(对于架构对象)。如果引用对象不是架构对象(例如仓库),则此值为空。 |
OBJECT_NAME |
TEXT |
如果标签关联位于对象上,则为引用对象的名称。 |
DOMAIN |
TEXT |
如果标签关联位于对象上,则引用对象的域(例如表、视图)。如果标签关联位于列上,则域为 COLUMN。 |
COLUMN_NAME |
TEXT |
引用列的名称;如果标签关联不是列,则不适用。 |
示例¶
检索与表 my_table
关联的标签列表:
select * from table(my_db.information_schema.tag_references('my_table', 'table'));
检索列 result
上关联的标签列表:
select * from table(my_db.information_schema.tag_references('my_table.result', 'COLUMN'));