DESCRIBE SEMANTIC VIEW

Descreve as propriedades das tabelas lógicas, dimensões, fatos e métricas que compõem uma exibição semântica.

Consulte também:

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

Sintaxe

{ DESCRIBE | DESC } SEMANTIC VIEW <name>
Copy

Parâmetros

name

Especifica o identificador da exibição semântica a ser descrita.

Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.

Para obter mais informações, consulte Requisitos para identificadores.

Saída

A saída do comando fornece as propriedades e os metadados sobre as tabelas lógicas, as relações, os fatos, as dimensões, as métricas e a própria exibição semântica.

Cada linha da exibição representa uma propriedade de:

  • Uma tabela lógica

  • Uma relação

  • Um fato

  • Uma dimensão

  • Uma métrica

  • A própria exibição semântica

A seguir, um exemplo da saída do comando:

+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
| 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                                 |
| ...          | ...                          | ...           | ...                      | ...                                    |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+

Como mostrado acima, cada linha representa uma propriedade de uma tabela lógica, dimensão, relação, métrica ou fato. Por exemplo:

  • A primeira linha é o valor da propriedade comment da própria exibição semântica.

  • A segunda linha é o valor da propriedade base_table_database_name da tabela lógica denominada customers.

A exibição inclui as seguintes colunas:

Coluna

Descrição

object_kind

Tipo do objeto que tem a propriedade para essa linha. O valor pode ser um dos seguintes:

  • TABLE (as tabelas lógicas para a exibição)

  • RELATIONSHIP

  • DIMENSION

  • FACT

  • METRIC

  • DERIVED_METRIC (para uma métrica derivada)

  • NULL (propriedades que se aplicam à própria exibição semântica, como um comentário)

object_name

Nome da dimensão, fato, métrica, tabela lógica ou relação que tem a propriedade para essa linha.

Para linhas que representam propriedades da própria exibição semântica, o valor dessa coluna é NULL.

parent_entity

Nome da entidade pai da dimensão, fato, métrica ou relação.

O valor desta coluna é NULL para linhas que representam:

property

Nome da propriedade da tabela lógica, relação, dimensão, fato, métrica ou exibição semântica.

O valor dessa coluna depende do tipo do objeto (object_kind).

Consulte as seções a seguir para obter detalhes sobre as propriedades e seus possíveis valores, com base no valor da coluna object_kind:

property_value

Valor da propriedade da tabela lógica, relação, dimensão, fato, métrica ou exibição semântica.

Propriedades das tabelas lógicas

Se a coluna object_kind contiver TABLE, a coluna property poderá conter os seguintes valores:

Nome da propriedade

Descrição

BASE_TABLE_DATABASE_NAME

Nome do banco de dados que contém a tabela lógica.

BASE_TABLE_SCHEMA_NAME

Nome do esquema que contém a tabela lógica.

BASE_TABLE_NAME

Nome da tabela lógica.

SYNONYMS

Matriz de valores VARCHAR, representando os sinônimos da tabela lógica.

PRIMARY_KEY

Matriz de valores VARCHAR, especificando os nomes das colunas que compõem a chave primária da tabela lógica.

Propriedades para relações

Se a coluna object_kind contiver RELATIONSHIP, a coluna property poderá conter os seguintes valores:

Nome da propriedade

Descrição

TABLE

Nome de uma das tabelas lógicas na relação.

FOREIGN_KEY

Nome da coluna na tabela lógica usada na relação.

REF_TABLE

Nome da outra tabela lógica na relação.

REF_KEY

Nome da coluna na outra tabela lógica da relação.

Propriedades para fatos, dimensões e métricas

Se a coluna object_kind contiver FACT, DIMENSION ou METRIC, a coluna property poderá conter os seguintes valores:

Nome da propriedade

Descrição

TABLE

Nome da tabela lógica usada para definir a dimensão, o fato ou a métrica.

EXPRESSION

A expressão SQL para a dimensão, o fato ou a métrica.

DATA_TYPE

O tipo de dados SQL da expressão SQL avaliada.

ACCESS_MODIFIER

PRIVATE para fatos e métricas privadas. PUBLIC para todo o restante.

Nota

For derived metrics, the TABLE property is not present.

Além disso, se a linha representar uma dimensão que usa um Cortex Search Service, a coluna property poderá conter os seguintes valores:

Nome da propriedade

Descrição

CORTEX_SEARCH_SERVICE_COLUMN_NAME

O nome da coluna na qual o Cortex Search Service permite que você pesquise.

CORTEX_SEARCH_SERVICE_DATABASE_NAME

The name of the database that contains the Cortex Search Service.

CORTEX_SEARCH_SERVICE_SCHEMA_NAME

The name of the schema that contains the Cortex Search Service.

CORTEX_SEARCH_SERVICE_NAME

O nome do Cortex Search Service.

Propriedades para exibições semânticas

Se a coluna object_kind for NULL, a coluna property poderá conter os seguintes valores:

Nome da propriedade

Descrição

COMMENT

Comentário sobre a exibição semântica.

Requisitos de controle de acesso

A role used to execute this operation must have the following privileges at a minimum:

Privilégio

Objeto

Notas

Qualquer

Exibição semântica

A operação em um objeto de esquema requer pelo menos um privilégio no banco de dados pai e um privilégio no esquema pai.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • Para pós-processar a saída deste comando, você pode usar o operador de canal (->>) ou a função RESULT_SCAN. Ambos os constructos tratam a saída como um conjunto de resultados que você pode consultar.

    Por exemplo, é possível usar o operador de canal ou a função RESULT_SCAN para selecionar colunas específicas da saída do comando SHOW ou filtrar as linhas.

    Quando você fizer referência a colunas de saída, use identificadores entre aspas duplas para os nomes das colunas. Por exemplo, para selecionar a coluna de saída type, especifique SELECT "type".

    Você deve usar identificadores entre aspas duplas porque os nomes das colunas de saída para os comandos SHOW estão em minúsculas. As aspas duplas garantem que os nomes das colunas na lista SELECT ou na cláusula WHERE correspondam aos nomes das colunas na saída do comando SHOW que foi verificada.

Exemplos

O exemplo a seguir descreve a exibição semântica denominada tpch_rev_analysis:

DESC SEMANTIC VIEW tpch_rev_analysis;
Copy
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
| 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         |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+