DESCRIBE SEMANTIC VIEW¶
시맨틱 뷰 를 구성하는 논리적 테이블, 차원, 팩트, 메트릭의 속성을 설명합니다.
- 참고 항목:
CREATE SEMANTIC VIEW , ALTER SEMANTIC VIEW , DROP SEMANTIC VIEW , SHOW SEMANTIC VIEWS , SHOW SEMANTIC DIMENSIONS , SHOW SEMANTIC DIMENSIONS FOR METRIC , SHOW SEMANTIC FACTS , SHOW SEMANTIC METRICS
구문¶
{ DESCRIBE | DESC } SEMANTIC VIEW <name>
매개 변수¶
name설명할 시맨틱 뷰의 식별자를 지정합니다.
식별자에 공백이나 특수 문자가 포함된 경우 전체 문자열을 큰따옴표로 묶어야 합니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.
자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.
출력¶
명령 출력은 논리적 테이블, 관계, 팩트, 차원, 메트릭 및 시맨틱 뷰 자체에 대한 속성과 메타데이터를 제공합니다.
뷰의 각 행은 다음의 속성을 나타냅니다.
논리 테이블
관계
팩트
차원
메트릭
시맨틱 뷰 자체
다음은 명령의 출력 예시입니다.
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
| object_kind | object_name | parent_entity | property | property_value |
|--------------+------------------------------+---------------+--------------------------+----------------------------------------|
| NULL | NULL | NULL | COMMENT | Comment about the semantic view |
| TABLE | CUSTOMERS | NULL | BASE_TABLE_DATABASE_NAME | SNOWFLAKE_SAMPLE_DATA |
| ... | ... | ... | ... | ... |
| DIMENSION | CUSTOMER_NAME | CUSTOMERS | TABLE | CUSTOMERS |
| ... | ... | ... | ... | ... |
| RELATIONSHIP | LINE_ITEM_TO_ORDERS | LINE_ITEMS | TABLE | LINE_ITEMS |
| ... | ... | ... | ... | ... |
| FACT | DISCOUNTED_PRICE | LINE_ITEMS | TABLE | LINE_ITEMS |
| ... | ... | ... | ... | ... |
| METRIC | AVERAGE_LINE_ITEMS_PER_ORDER | ORDERS | TABLE | ORDERS |
| ... | ... | ... | ... | ... |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
위에 표시된 것처럼 각 행은 논리 테이블, 차원, 관계, 메트릭 또는 팩트의 속성을 나타냅니다. 예:
첫 번째 행은 시맨틱 뷰 자체의
comment속성 값입니다.두 번째 행은
customers라는 논리 테이블의base_table_database_name속성 값입니다.
뷰에는 다음 열이 포함됩니다.
열 |
설명 |
|---|---|
|
이 행의 속성을 가진 오브젝트의 유형입니다. 값은 다음 중 하나일 수 있습니다.
|
|
이 행의 속성이 있는 차원, 팩트, 메트릭, 논리적 테이블 또는 관계의 이름입니다. 시맨틱 뷰 자체의 속성을 나타내는 행의 경우 이 열의 값은 NULL 입니다. |
|
차원, 팩트, 메트릭 또는 관계의 상위 항목 엔터티의 이름입니다. The value of this column is NULL for rows that represent:
|
|
논리 테이블, 관계, 차원, 팩트, 메트릭 또는 시맨틱 뷰의 속성 이름입니다. 이 열의 값은 오브젝트의 유형에 따라 달라집니다(
|
|
논리 테이블, 관계, 차원, 팩트, 메트릭 또는 시맨틱 뷰의 속성 값입니다. |
논리 테이블의 속성¶
object_kind 열에 TABLE 이 포함된 경우 property 열에 다음 값을 포함할 수 있습니다.
속성 이름 |
설명 |
|---|---|
|
논리 테이블이 포함된 데이터베이스의 이름입니다. |
|
논리 테이블을 포함하는 스키마의 이름입니다. |
|
논리 테이블의 이름입니다. |
|
VARCHAR 값의 배열 로, 논리적 테이블의 동의어를 나타냅니다. |
|
VARCHAR 값의 배열 로, 논리적 테이블의 기본 키를 구성하는 열의 이름을 지정합니다. |
관계의 속성¶
object_kind 열에 RELATIONSHIP 이 포함된 경우 property 열에 다음 값을 포함할 수 있습니다.
속성 이름 |
설명 |
|---|---|
|
관계에 있는 논리 테이블 중 하나의 이름입니다. |
|
관계에 사용된 해당 논리 테이블의 열 이름입니다. |
|
관계에 있는 다른 논리 테이블의 이름입니다. |
|
관계의 다른 논리 테이블에 있는 열의 이름입니다. |
팩트, 차원 및 메트릭에 대한 속성¶
object_kind 열에 FACT, DIMENSION 또는 METRIC 이 포함된 경우 property 열에 다음 값을 포함할 수 있습니다.
속성 이름 |
설명 |
|---|---|
|
차원, 팩트 또는 메트릭을 정의하는 데 사용되는 논리적 테이블의 이름입니다. |
|
차원, 팩트 또는 메트릭에 대한 SQL 식입니다. |
|
평가된 SQL 식의 SQL 데이터 타입입니다. |
|
비공개 팩트 및 메트릭 에 대해 |
참고
For derived metrics, the TABLE property is not present.
In addition, if the row represents a
dimension that uses a Cortex Search Service, the property
column can contain the following values:
속성 이름 |
설명 |
|---|---|
|
The name of the column that the Cortex Search Service allows you to search on. |
|
The name of the database that contains the Cortex Search Service. |
|
The name of the schema that contains the Cortex Search Service. |
|
The name of the Cortex Search Service. |
시맨틱 뷰의 속성¶
object_kind 열이 NULL 인 경우 property 열에 다음 값을 포함할 수 있습니다.
속성 이름 |
설명 |
|---|---|
|
시맨틱 뷰에 대한 설명입니다. |
액세스 제어 요구 사항¶
A role used to execute this operation must have the following privileges at a minimum:
권한 |
오브젝트 |
참고 |
|---|---|---|
임의 |
시맨틱 뷰 |
스키마의 모든 오브젝트에 대해 작업을 수행하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한. 스키마에 대한 모든 권한이 부여된 역할은 스키마를 확인할 수 있습니다. 예를 들어, 스키마에 대해 CREATE 권한을 부여받은 역할은 해당 스키마에 대한 USAGE 권한을 함께 부여받지 않더라도 해당 스키마에 대한 오브젝트를 생성할 수 있습니다.
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
사용법 노트¶
이 명령의 출력을 후처리하기 위해 파이프 연산자 (
->>) 또는 RESULT_SCAN 함수를 사용할 수 있습니다. 두 구문 모두 출력을 쿼리할 수 있는 결과 세트로 간주합니다.For example, you can use the pipe operator or RESULT_SCAN function to select specific columns from the SHOW command output or filter the rows.
When you refer to the output columns, use double-quoted identifiers for the column names. For example, to select the output column
type, specifySELECT "type".You must use double-quoted identifiers because the output column names for SHOW commands are in lowercase. The double quotes ensure that the column names in the SELECT list or WHERE clause match the column names in the SHOW command output that was scanned.
예¶
다음 예제에서는 tpch_rev_analysis 라는 시맨틱 뷰에 대해 설명합니다.
DESC SEMANTIC VIEW tpch_rev_analysis;
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
| object_kind | object_name | parent_entity | property | property_value |
|--------------+------------------------------+---------------+--------------------------+----------------------------------------|
| NULL | NULL | NULL | COMMENT | Comment about the semantic view |
| TABLE | CUSTOMERS | NULL | BASE_TABLE_DATABASE_NAME | SNOWFLAKE_SAMPLE_DATA |
| TABLE | CUSTOMERS | NULL | BASE_TABLE_SCHEMA_NAME | TPCH_SF1 |
| TABLE | CUSTOMERS | NULL | BASE_TABLE_NAME | CUSTOMER |
| TABLE | CUSTOMERS | NULL | PRIMARY_KEY | ["C_CUSTKEY"] |
| TABLE | CUSTOMERS | NULL | COMMENT | Main table for customer data |
| DIMENSION | CUSTOMER_NAME | CUSTOMERS | TABLE | CUSTOMERS |
| DIMENSION | CUSTOMER_NAME | CUSTOMERS | EXPRESSION | customers.c_name |
| DIMENSION | CUSTOMER_NAME | CUSTOMERS | DATA_TYPE | VARCHAR(25) |
| DIMENSION | CUSTOMER_NAME | CUSTOMERS | SYNONYMS | ["customer name"] |
| DIMENSION | CUSTOMER_NAME | CUSTOMERS | COMMENT | Name of the customer |
| TABLE | LINE_ITEMS | NULL | BASE_TABLE_DATABASE_NAME | SNOWFLAKE_SAMPLE_DATA |
| TABLE | LINE_ITEMS | NULL | BASE_TABLE_SCHEMA_NAME | TPCH_SF1 |
| TABLE | LINE_ITEMS | NULL | BASE_TABLE_NAME | LINEITEM |
| TABLE | LINE_ITEMS | NULL | PRIMARY_KEY | ["L_ORDERKEY","L_LINENUMBER"] |
| TABLE | LINE_ITEMS | NULL | COMMENT | Line items in orders |
| RELATIONSHIP | LINE_ITEM_TO_ORDERS | LINE_ITEMS | TABLE | LINE_ITEMS |
| RELATIONSHIP | LINE_ITEM_TO_ORDERS | LINE_ITEMS | REF_TABLE | ORDERS |
| RELATIONSHIP | LINE_ITEM_TO_ORDERS | LINE_ITEMS | FOREIGN_KEY | ["L_ORDERKEY"] |
| RELATIONSHIP | LINE_ITEM_TO_ORDERS | LINE_ITEMS | REF_KEY | ["O_ORDERKEY"] |
| FACT | DISCOUNTED_PRICE | LINE_ITEMS | TABLE | LINE_ITEMS |
| FACT | DISCOUNTED_PRICE | LINE_ITEMS | EXPRESSION | l_extendedprice * (1 - l_discount) |
| FACT | DISCOUNTED_PRICE | LINE_ITEMS | DATA_TYPE | NUMBER(25,4) |
| FACT | DISCOUNTED_PRICE | LINE_ITEMS | COMMENT | Extended price after discount |
| FACT | LINE_ITEM_ID | LINE_ITEMS | TABLE | LINE_ITEMS |
| FACT | LINE_ITEM_ID | LINE_ITEMS | EXPRESSION | CONCAT(l_orderkey, '-', l_linenumber) |
| FACT | LINE_ITEM_ID | LINE_ITEMS | DATA_TYPE | VARCHAR(134217728) |
| TABLE | ORDERS | NULL | BASE_TABLE_DATABASE_NAME | SNOWFLAKE_SAMPLE_DATA |
| TABLE | ORDERS | NULL | BASE_TABLE_SCHEMA_NAME | TPCH_SF1 |
| TABLE | ORDERS | NULL | BASE_TABLE_NAME | ORDERS |
| TABLE | ORDERS | NULL | SYNONYMS | ["sales orders"] |
| TABLE | ORDERS | NULL | PRIMARY_KEY | ["O_ORDERKEY"] |
| TABLE | ORDERS | NULL | COMMENT | All orders table for the sales domain |
| RELATIONSHIP | ORDERS_TO_CUSTOMERS | ORDERS | TABLE | ORDERS |
| RELATIONSHIP | ORDERS_TO_CUSTOMERS | ORDERS | REF_TABLE | CUSTOMERS |
| RELATIONSHIP | ORDERS_TO_CUSTOMERS | ORDERS | FOREIGN_KEY | ["O_CUSTKEY"] |
| RELATIONSHIP | ORDERS_TO_CUSTOMERS | ORDERS | REF_KEY | ["C_CUSTKEY"] |
| METRIC | AVERAGE_LINE_ITEMS_PER_ORDER | ORDERS | TABLE | ORDERS |
| METRIC | AVERAGE_LINE_ITEMS_PER_ORDER | ORDERS | EXPRESSION | AVG(orders.count_line_items) |
| METRIC | AVERAGE_LINE_ITEMS_PER_ORDER | ORDERS | DATA_TYPE | NUMBER(36,6) |
| METRIC | AVERAGE_LINE_ITEMS_PER_ORDER | ORDERS | COMMENT | Average number of line items per order |
| FACT | COUNT_LINE_ITEMS | ORDERS | TABLE | ORDERS |
| FACT | COUNT_LINE_ITEMS | ORDERS | EXPRESSION | COUNT(line_items.line_item_id) |
| FACT | COUNT_LINE_ITEMS | ORDERS | DATA_TYPE | NUMBER(18,0) |
| METRIC | ORDER_AVERAGE_VALUE | ORDERS | TABLE | ORDERS |
| METRIC | ORDER_AVERAGE_VALUE | ORDERS | EXPRESSION | AVG(orders.o_totalprice) |
| METRIC | ORDER_AVERAGE_VALUE | ORDERS | DATA_TYPE | NUMBER(30,8) |
| METRIC | ORDER_AVERAGE_VALUE | ORDERS | COMMENT | Average order value across all orders |
| DIMENSION | ORDER_DATE | ORDERS | TABLE | ORDERS |
| DIMENSION | ORDER_DATE | ORDERS | EXPRESSION | o_orderdate |
| DIMENSION | ORDER_DATE | ORDERS | DATA_TYPE | DATE |
| DIMENSION | ORDER_DATE | ORDERS | COMMENT | Date when the order was placed |
| DIMENSION | ORDER_YEAR | ORDERS | TABLE | ORDERS |
| DIMENSION | ORDER_YEAR | ORDERS | EXPRESSION | YEAR(o_orderdate) |
| DIMENSION | ORDER_YEAR | ORDERS | DATA_TYPE | NUMBER(4,0) |
| DIMENSION | ORDER_YEAR | ORDERS | COMMENT | Year when the order was placed |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+