DESCRIBE SEMANTIC VIEW¶
Beschreibt die Eigenschaften der logischen Tabellen, Dimensionen, Fakten und Metriken, aus denen sich eine semantische Ansicht zusammensetzt.
- Siehe auch::
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
Syntax¶
{ DESCRIBE | DESC } SEMANTIC VIEW <name>
Parameter¶
nameGibt den Bezeichner für die zu beschreibende semantische Ansicht an.
Wenn der Bezeichner Leerzeichen oder Sonderzeichen enthält, muss die gesamte Zeichenfolge in doppelte Anführungszeichen gesetzt werden. Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß- und Kleinschreibung zu beachten.
Weitere Informationen dazu finden Sie unter Anforderungen an Bezeichner.
Ausgabe¶
Die Befehlsausgabe liefert die Eigenschaften und Metadaten über die logischen Tabellen, Beziehungen, Fakten, Dimensionen, Metriken und die semantische Ansicht selbst.
Jede Zeile in der Ansicht stellt eine Eigenschaft der folgenden Elemente dar:
Eine logische Tabelle
Eine Beziehung
Ein Fakt
Eine Dimension
Eine Metrik
Die semantische Ansicht selbst
Im Folgenden sehen Sie ein Beispiel für die Ausgabe des Befehls:
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
| 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 |
| ... | ... | ... | ... | ... |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+
Wie oben dargestellt, steht jede Zeile für eine Eigenschaft einer logischen Tabelle, Dimension, Beziehung, Metrik oder eines Fakts. Beispiel:
Die erste Zeile ist der Wert der Eigenschaft
commentder semantischen Ansicht selbst.Die zweite Zeile ist der Wert der Eigenschaft
base_table_database_nameder logischen Tabelle namenscustomers.
Die Ansicht enthält die folgenden Spalten:
Spalte |
Beschreibung |
|---|---|
|
Typ des Objekts, das die Eigenschaft für diese Zeile besitzt. Der Wert kann einer der folgenden sein:
|
|
Name der Dimension, des Fakts, der Metrik, der logischen Tabelle oder der Beziehung, die die Eigenschaft für diese Zeile hat. Für Zeilen, die Eigenschaften der semantischen Ansicht selbst darstellen, lautet der Wert in dieser Spalte NULL. |
|
Name der übergeordneten Entität der Dimension, des Fakts, der Metrik oder der Beziehung. Der Wert dieser Spalte ist NULL für Zeilen, die für Folgendes stehen:
|
|
Name der Eigenschaft der logischen Tabelle, der Beziehung, der Dimension, des Fakts, der Metrik oder der semantischen Ansicht. Der Wert in dieser Spalte hängt von der Art des Objekts ab ( In den folgenden Abschnitten finden Sie Einzelheiten zu den Eigenschaften und ihren möglichen Werten, basierend auf dem Wert in der Spalte
|
|
Wert der Eigenschaft der logischen Tabelle, der Beziehung, der Dimension, des Fakts, der Metrik oder der semantischen Ansicht. |
Eigenschaften für logische Tabellen¶
Wenn die Spalte object_kind TABLE enthält, kann die Spalte property die folgenden Werte enthalten:
Name der Eigenschaft |
Beschreibung |
|---|---|
|
Name der Datenbank, die die logische Tabelle enthält. |
|
Name des Schemas, das die logische Tabelle enthält. |
|
Name der logischen Tabelle. |
|
Array von VARCHAR-Werten, die die Synonyme für die logische Tabelle darstellen. |
|
Array von VARCHAR-Werten, die die Namen der Spalten angeben, aus denen der Primärschlüssel für die logische Tabelle besteht. |
Eigenschaften für Beziehungen¶
Wenn die Spalte object_kind RELATIONSHIP enthält, kann die Spalte property die folgenden Werte enthalten:
Name der Eigenschaft |
Beschreibung |
|---|---|
|
Name einer der logischen Tabellen in der Beziehung. |
|
Name der Spalte in dieser logischen Tabelle, die in der Beziehung verwendet wird. |
|
Name der anderen logischen Tabelle in der Beziehung. |
|
Name der Spalte in der anderen logischen Tabelle in der Beziehung. |
Eigenschaften für Fakten, Dimensionen und Metriken¶
Wenn die Spalte object_kind FACT, DIMENSION oder METRIC enthält, kann die Spalte property die folgenden Werte enthalten:
Name der Eigenschaft |
Beschreibung |
|---|---|
|
Name der logischen Tabelle, die zur Definition der Dimension, des Fakts oder der Metrik verwendet wird. |
|
Der SQL-Ausdruck für die Dimension, den Fakt oder die Metrik. |
|
Der SQL-Datentyp des ausgewerteten SQL-Ausdrucks. |
|
|
Bemerkung
For derived metrics, the TABLE property is not present.
Wenn die Zeile eine Dimension darstellt, die einen Cortex Search Service verwendet, kann die Spalte property die folgenden Werte enthalten:
Name der Eigenschaft |
Beschreibung |
|---|---|
|
Der Name der Spalte, in der Sie mit dem Cortex Search Service suchen können. |
|
The name of the database that contains the Cortex Search Service. |
|
The name of the schema that contains the Cortex Search Service. |
|
Der Name des Cortex Search Service. |
Eigenschaften für semantische Ansichten¶
Wenn die Spalte object_kind NULL lautet, kann die Spalte property die folgenden Werte enthalten:
Name der Eigenschaft |
Beschreibung |
|---|---|
|
Kommentar zur semantischen Ansicht. |
Anforderungen an die Zugriffssteuerung¶
A role used to execute this operation must have the following privileges at a minimum:
Berechtigung |
Objekt |
Anmerkungen |
|---|---|---|
Beliebig |
Semantische Ansicht |
Für das Ausführen von Operationen für ein Objekt in einem Schema ist mindestens eine Berechtigung für die übergeordnete Datenbank und mindestens eine Berechtigung für das übergeordnete Schema erforderlich.
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.
Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.
Nutzungshinweise¶
Um die Ausgabe dieses Befehls nachzubearbeiten, können Sie den Befehl Pipe-Operator (
->>) oder die RESULT_SCAN-Funktion verwenden. Beide Konstrukte behandeln die Ausgabe als Resultset, das Sie abfragen können.Sie können zum Beispiel den Pipe-Operator oder die RESULT_SCAN-Funktion verwenden, um bestimmte Spalten aus der SHOW-Befehlsausgabe auszuwählen oder die Zeilen zu filtern.
Wenn Sie sich auf die Ausgabespalten beziehen, verwenden Sie Bezeichner mit doppelten Anführungszeichen für die Spaltennamen. Um beispielsweise die Ausgabespalte
typeauszuwählen, geben SieSELECT "type"an.Sie müssen Bezeichner in doppelten Anführungszeichen verwenden, da die Ausgabespaltennamen für SHOW-Befehle in Kleinbuchstaben geschrieben sind. Die doppelten Anführungszeichen stellen sicher, dass die Spaltennamen in der SELECT-Liste oder WHERE-Klausel den Spaltennamen in der SHOW-Befehlsausgabe entsprechen, die gescannt wurde.
Beispiele¶
Das folgende Beispiel beschreibt die semantische Ansicht namens 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 |
+--------------+------------------------------+---------------+--------------------------+----------------------------------------+