TAG_REFERENCES
TAG_REFERENCES
각 행이 태그와 값 사이의 연결(association)을 보여주는 테이블을 반환해요. 연결된 태그와 값은 객체에 대한 직접 연결 또는 태그 상속(tag inheritance)의 결과예요.
본문
구문
TAG_REFERENCES( object_name , object_domain )
인자
object_name
태그 연결이 객체에 있는 경우, 참조되는 객체의 이름이에요.
시맨틱 뷰(semantic view)에서 논리 테이블, 차원(dimension), 팩트(fact), 메트릭(metric)을 식별하려면:
- 시맨틱 뷰 이름과 논리 테이블 이름 사이에 느낌표(
!)를 사용해요. - 논리 테이블 이름과 차원, 팩트, 메트릭 이름 사이에 마침표(
.)를 사용해요. - 파생 메트릭(derived metric)의 경우 시맨틱 뷰 이름과 파생 메트릭 이름 사이에 마침표(
.)를 사용해요.
예를 들어:
my_semantic_view!my_logical_tablemy_semantic_view!my_logical_table.my_dimensionmy_semantic_view!my_logical_table.my_factmy_semantic_view!my_logical_table.my_metricmy_semantic_view.my_derived_metric
object_domain
태그 연결이 객체에 있는 경우, 참조 객체의 도메인(예: table, view)이에요. 태그 연결이 컬럼에 있으면 도메인은 COLUMN이에요.
다음 값 중 하나를 사용해요:
ACCOUNTALERTBACKUP POLICYBACKUP SETCOLUMNCOMPUTE POOLCORTEX AGENTCORTEX SEARCH SERVICEDATABASEDATABASE ROLEFAILOVER GROUPFUNCTIONINTEGRATIONINSTANCENETWORK POLICYPROCEDUREREPLICATION GROUPROLESCHEMASHARESNAPSHOT POLICY(deprecated; preferBACKUP POLICY)SNAPSHOT SET(deprecated; preferBACKUP SET)SNOWFLAKE INTELLIGENCESTAGESTREAMTABLE: 뷰, 구체화된 뷰(materialized view), 외부 테이블(external table) 같은 모든 테이블 형태 객체에 이 값을 사용해요.TASKUSERWAREHOUSE
사용 시 유의사항
- 지정한 객체에 대한 접근 권한이 있는 역할에 대해서만 결과가 반환돼요. 민감 데이터 분류와 연결된 시스템 태그에 대한 참조를 보려면 공유된 SNOWFLAKE 데이터베이스에 IMPORTED PRIVILEGES가 있는 역할을 사용해요.
- Information Schema 테이블 함수를 호출할 때 세션에 INFORMATION_SCHEMA 스키마가 사용 중이거나 함수가 정규화된(fully-qualified) 객체 이름을 사용해야 해요. 자세한 내용은 Snowflake Information Schema를 참고하세요.
출력
이 함수는 다음 컬럼을 반환해요:
| Column | Data Type | Description |
|---|---|---|
| TAG_DATABASE | TEXT | 태그가 설정된 데이터베이스 |
| TAG_SCHEMA | TEXT | 태그가 설정된 스키마 |
| TAG_NAME | TEXT | 태그의 이름. 태그의 key = value 쌍에서 key에 해당해요. |
| TAG_VALUE | TEXT | 태그의 값. 태그의 key = value 쌍에서 value에 해당해요. |
| APPLY_METHOD | TEXT | 태그가 객체에 할당된 방식을 지정해요. 가능한 값은 다음과 같아요: |
- CLASSIFIED: 민감 데이터를 포함하는 것으로 분류된 컬럼에 태그가 자동으로 적용됨. label-classify_auto_map_tags 참고. |
||
- INHERITED: 객체가 Snowflake 보안 객체 계층에서 더 상위에 있는 객체로부터 태그를 상속받음. Tag inheritance 참고. |
||
- MANUAL: 누군가 CREATE object 또는 ALTER object 명령으로 객체에 태그를 수동으로 설정함. label-object_tagging_set 참고. |
||
- PROPAGATED: 한 객체에서 다른 객체로 태그가 자동으로 전파됨. Automatic tag propagation with user-defined tags 참고. |
||
- NULL: 레거시 레코드. |
||
- NONE: 레거시 레코드. |
||
| LEVEL | TEXT | 태그가 설정된 객체 도메인 |
| OBJECT_DATABASE | TEXT | 데이터베이스·스키마 객체에 대한 참조 객체의 데이터베이스 이름. 객체가 데이터베이스·스키마 객체가 아니면 값이 비어 있어요. |
| OBJECT_SCHEMA | TEXT | (스키마 객체에 대한) 참조 객체의 스키마 이름. 참조 객체가 스키마 객체가 아니면(예: warehouse) 값이 비어 있어요. |
| OBJECT_NAME | TEXT | 태그 연결이 객체에 있는 경우 참조 객체의 이름 |
| DOMAIN | TEXT | 태그 연결이 객체에 있는 경우 참조 객체의 도메인(예: table, view). 태그 연결이 컬럼에 있으면 도메인은 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));
더 알아보기 (Learn more)
- TAG_REFERENCES_ALL_COLUMNS — 테이블의 모든 컬럼 태그 참조