类别:

系统函数

SYSTEM$GET_TAG

返回与指定的 Snowflake 对象或列关联的标记值。如果未在指定的 Snowflake 对象或列上设置标记,则返回 NULL。

语法

SYSTEM$GET_TAG( '<tag_name>' , '<obj_name>' , '<obj_domain>' )
Copy

实参

'tag_name'

作为字符串的标签的名称。

名称是标签的键值对中的 key。例如,在标签 cost_center = 'sales' 中,cost_center 是标签的键名。对于此实参,请使用 'cost_center'.

'obj_name'

作为字符串的对象的名称。

例如,如果表名是 my_table,则将 'my_table' 用作对象的名称。

要指定列,请使用格式 <table_name>.<column_name>. For example, my_table.revenue

有关更多信息,请参阅 对象标识符

'object_domain'

引用对象(如表或视图)的域(如果标签关联位于对象上)。对于列,如果标签关联位于列上,则域为 COLUMN 域。

使用以下值之一:

  • 'ACCOUNT'

  • 'ALERT'

  • 'COLUMN'

  • 'DATABASE'

  • 'DATABASE ROLE'

  • 'FUNCTION'

  • 'INTEGRATION'

  • 'NETWORK POLICY'

  • 'PROCEDURE'

  • 'ROLE'

  • 'SCHEMA'

  • 'SHARE'

  • 'STAGE'

  • 'STREAM'

  • 'TABLE':将此值用于所有类似表的对象,例如视图、物化视图和外部表。

  • 'TASK'

  • 'USER'

  • 'WAREHOUSE'

使用说明

  • 要使用此函数,需要以下内容:

示例

如果标签未关联到指定对象,则返回 NULL

select system$get_tag('cost_center', 'my_table', 'table');

+-----------------------------------------------------+
| SYSTEM$GET_TAG('COST_CENTER', 'MY_TABLE', 'TABLE')  |
+-----------------------------------------------------+
| NULL                                                |
+-----------------------------------------------------+
Copy

返回指定表的标签值。标签值是标签中 key = 'value' 对的字符串组件:

select system$get_tag('cost_center', 'my_table', 'table');

-----------------------------------------------------+
| SYSTEM$GET_TAG('COST_CENTER', 'MY_TABLE', 'TABLE') |
+----------------------------------------------------+
| sales                                              |
+----------------------------------------------------+
Copy

返回指定列的标签值:

select system$get_tag('fiscal_quarter', 'my_table.revenue', 'column');

+----------------------------------------------------------------+
| SYSTEM$GET_TAG('FISCAL_QUARTER', 'MY_TABLE.REVENUE', 'COLUMN') |
+----------------------------------------------------------------+
| Q1                                                             |
+----------------------------------------------------------------+
Copy
语言: 中文