DESCRIBE SEMANTIC VIEW¶
Décrit les propriétés des tables logiques, des dimensions, des faits et des métriques qui composent une vue sémantique.
- Voir aussi ::
CREATE SEMANTIC VIEW, DROP SEMANTIC VIEW, SHOW SEMANTIC VIEWS
Syntaxe¶
{ DESCRIBE | DESC } SEMANTIC VIEW <name>
Paramètres¶
name
Spécifie l’identificateur de la vue sémantique à décrire.
Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.
Pour plus d’informations, voir Exigences relatives à l’identificateur.
Sortie¶
La sortie de la commande fournit les propriétés et les métadonnées des tables logiques, des relations, des faits, des dimensions, des métriques et de la vue sémantique elle-même.
Chaque ligne de la vue représente une propriété des éléments suivants :
Une table logique
Une relation
Un fait
Une dimension
Une métrique
La vue sémantique elle-même
Voici un exemple de la sortie de la commande :
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
| 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 |
| ... | ... | ... | ... | ... |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
Comme indiqué ci-dessus, chaque ligne représente une propriété d’une table logique, d’une dimension, d’une relation, d’une métrique ou d’un fait. Par exemple :
La première ligne est la valeur de la propriété
comment
de la vue sémantique elle-même.La deuxième ligne est la valeur de la propriété
base_table_database_name
de la table logique nomméecustomers
.
La vue comprend les colonnes suivantes :
Colonne |
Description |
---|---|
|
Type de l’objet qui possède la propriété de cette ligne. La valeur peut être l’une des suivantes :
|
|
Nom de la dimension, du fait, de la métrique, de la table logique ou de la relation qui possède la propriété de cette ligne. Pour les lignes qui représentent des propriétés de la vue sémantique elle-même, la valeur de cette colonne est NULL. |
|
Nom de l’entité parente de la dimension, du fait, de la métrique ou de la relation. Pour les lignes qui représentent des propriétés de tables logiques ou de la vue sémantique elle-même, la valeur de cette colonne est NULL. |
|
Nom de la propriété de la table logique, de la relation, de la dimension, du fait, de la métrique ou de la vue sémantique. La valeur de cette colonne dépend du type de l’objet ( Consultez les sections suivantes pour plus de détails sur les propriétés et leurs valeurs possibles, en fonction de la valeur de la colonne
|
|
Valeur de la propriété de la table logique, de la relation, de la dimension, du fait, de la métrique ou de la vue sémantique. |
Propriétés des tables logiques¶
Si la colonne object_kind
contient TABLE
, la colonne property
peut contenir les valeurs suivantes :
Nom de propriété |
Description |
---|---|
|
Nom de la base de données contenant la table logique. |
|
Nom du schéma contenant la table logique. |
|
Nom de la table logique. |
|
Tableau de valeurs VARCHAR représentant les synonymes de la table logique. |
|
Tableau de valeurs VARCHAR spécifiant les noms des colonnes qui constituent la clé primaire de la table logique. |
Propriétés des relations¶
Si la colonne object_kind
contient RELATIONSHIP
, la colonne property
peut contenir les valeurs suivantes :
Nom de propriété |
Description |
---|---|
|
Nom de l’une des tables logiques de la relation. |
|
Nom de la colonne de cette table logique utilisée dans la relation. |
|
Nom de l’autre table logique de la relation. |
|
Nom de la colonne de l’autre table logique de la relation. |
Propriétés des faits, des dimensions et des métriques¶
Si la colonne object_kind
contient FACT
, DIMENSION
ou METRIC
, la colonne property
peut contenir les valeurs suivantes :
Nom de propriété |
Description |
---|---|
|
Nom de la table logique utilisée pour définir la dimension, le fait ou la métrique. |
|
Expression SQL de la dimension, du fait ou de la métrique. |
|
Type de données SQL de l’expression SQL évaluée. |
Propriétés des vues sémantiques¶
Si la colonne object_kind
est NULL, la colonne property
peut contenir les valeurs suivantes :
Nom de propriété |
Description |
---|---|
|
Commentaire sur la vue sémantique. |
Exigences en matière de contrôle d’accès¶
Un rôle utilisé pour exécuter cette commande SQL doit avoir au moins l’un des privilèges suivants définis au minimum ainsi :
Privilège |
Objet |
Remarques |
---|---|---|
N’importe quel |
Vue sémantique |
Le privilège USAGE relatif à la base de données et au schéma parents est exigé pour effectuer des opérations sur tout objet d’un schéma.
Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.
Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.
Notes sur l’utilisation¶
Pour post-traiter la sortie de cette commande, vous pouvez utiliser la fonction RESULT_SCAN qui traite la sortie sous forme de table à interroger. Vous pouvez également utiliser l”opérateur de canal pour interroger la sortie de cette commande.
Exemples¶
L’exemple suivant décrit la vue sémantique nommée 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 |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+