- Schema:
Ansicht TABLES¶
In dieser Account Usage-Ansicht wird für jede Tabelle und Ansicht im Konto eine Zeile angezeigt.
- Siehe auch:
Ansicht COLUMNS, Ansicht VIEWS, Ansicht TABLES (Information Schema)
Spalten¶
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
TABLE_ID |
NUMBER |
Interner, von Snowflake generierter Bezeichner für die Tabelle. |
TABLE_NAME |
TEXT |
Name der Tabelle. |
TABLE_SCHEMA_ID |
NUMBER |
Interner, von Snowflake generierter Bezeichner des Schemas für die Tabelle. |
TABLE_SCHEMA |
TEXT |
Schema, zu dem die Tabelle gehört. |
TABLE_CATALOG_ID |
NUMBER |
Interner, von Snowflake generierter Bezeichner der Datenbank für die Tabelle. |
TABLE_CATALOG |
TEXT |
Datenbank, zu der die Tabelle gehört. |
TABLE_OWNER |
TEXT |
Name der Rolle, der die Tabelle gehört. |
TABLE_TYPE |
TEXT |
Gibt den Tabellentyp an. Gültige Werte sind |
IS_TRANSIENT |
TEXT |
Gibt an, ob die Tabelle transient ist. |
CLUSTERING_KEY |
TEXT |
Spalten und/oder Ausdrücke, die den Gruppierungsschlüssel für die Tabelle enthalten. |
ROW_COUNT |
NUMBER |
Anzahl der Zeilen in der Tabelle. |
BYTES |
NUMBER |
Anzahl der Bytes, auf die bei einem Scan der Tabelle zugegriffen wird. |
RETENTION_TIME |
NUMBER |
Anzahl der Tage, während der historische Daten für Time Travel aufbewahrt werden. |
SELF_REFERENCING_COLUMN_NAME |
TEXT |
Nicht anwendbar für Snowflake. |
REFERENCE_GENERATION |
TEXT |
Nicht anwendbar für Snowflake. |
USER_DEFINED_TYPE_CATALOG |
TEXT |
Nicht anwendbar für Snowflake. |
USER_DEFINED_TYPE_SCHEMA |
TEXT |
Nicht anwendbar für Snowflake. |
USER_DEFINED_TYPE_NAME |
TEXT |
Nicht anwendbar für Snowflake. |
IS_INSERTABLE_INTO |
TEXT |
Nicht anwendbar für Snowflake. |
IS_TYPED |
TEXT |
Nicht anwendbar für Snowflake. |
COMMIT_ACTION |
TEXT |
Nicht anwendbar für Snowflake. |
CREATED |
TIMESTAMP_LTZ |
Datum und Uhrzeit der Erstellung der Tabelle. |
LAST_ALTERED |
TIMESTAMP_LTZ |
Datum und Uhrzeit der letzten Änderung des Objekts durch eine DML, DDL oder eine Operation mit Metadaten im Hintergrund. Siehe Nutzungshinweise. |
LAST_DDL |
TIMESTAMP_LTZ |
Zeitstempel der letzten DDL-Operation, die auf der Tabelle oder Ansicht ausgeführt wurde. Alle unterstützten DDL-Operationen auf der Tabelle bzw. Ansicht aktualisieren dieses Feld:
Alle ALTER TABLE-Operationen führen zur Aktualisierung dieses Feldes, einschließlich des Setzens oder Entfernens eines Tabellenparameters (z. B. COMMENT, DATA_RETENTION_TIME usw.), und zu Änderungen an den Tabellenspalten (ADD/MODIFY/RENAME/DROP). Weitere Informationen dazu finden Sie in den Nutzungshinweisen. |
LAST_DDL_BY |
TEXT |
Der aktuelle Benutzername des Benutzers, der die letzte DDL-Operation ausgeführt hat. Wenn der Benutzer gelöscht wurde, wird Bei gelöschten Benutzern können Sie die |
DELETED |
TIMESTAMP_LTZ |
Datum und Zeit der Löschung der Tabelle. |
AUTO_CLUSTERING_ON |
TEXT |
Status von Automatic Clustering für eine Tabelle. Weitere Details dazu finden Sie unter Anzeigen des Automatic Clustering-Status für eine Tabelle. |
COMMENT |
TEXT |
Kommentar zur Tabelle. |
OWNER_ROLE_TYPE |
TEXT |
Der Typ der Rolle, die Eigentümer des Objekts ist, zum Beispiel |
INSTANCE_ID |
NUMBER |
Interner/systemgenerierter Bezeichner für die Instanz, zu der das Objekt gehört. |
IS_ICEBERG |
TEXT |
Gibt an, ob die Tabelle eine Iceberg-Tabelle ist. Gültige Werte sind |
IS_DYNAMIC |
TEXT |
Gibt an, ob die Tabelle eine dynamische Tabelle ist. Gültige Werte sind |
Nutzungshinweise¶
Die Latenzzeit der Ansicht kann bis zu 90 Minuten betragen.
Die Ansicht erkennt die Berechtigung MANAGE GRANTS nicht und zeigt daher im Vergleich zu einem SHOW-Befehl, der von einem Benutzer mit der Berechtigung MANAGE GRANTS ausgeführt wird, möglicherweise weniger Informationen an.
Das Abfragen von
SUM(BYTES)
für eine Tabelle repräsentiert nicht die gesamte Speichernutzung, da in der Summe die Verwendung von Time Travel und Fail-safe nicht enthalten ist.Die Verwendung des Wertes in der Spalte LAST_ALTERED für Time Travel wird nicht empfohlen und kann aus den folgenden Gründen unerwartete Ergebnisse liefern:
Time Travel kann nur verwendet werden, um historische Daten abzufragen, die durch eine DML-Operation geändert wurden.
Die Spalte LAST_ALTERED enthält sowohl die DML- als auch die DDL-Operationen (siehe den nächsten Nutzungshinweis).
Bei DML-Operationen ist der Wert in der Spalte LAST_ALTERED der Zeitstempel zu Beginn der Ausführung der Anweisung und nicht der Zeitpunkt des Commits der Transaktion, die diese Anweisung enthält.
Die Spalte LAST_ALTERED wird aktualisiert, wenn die folgenden Operationen auf einem Objekt ausgeführt werden:
DDL-Operationen
DML-Operationen (nur für Tabellen) Diese Spalte wird auch dann aktualisiert, wenn keine Zeilen von der DML-Anweisung betroffen sind.
Von Snowflake ausgeführte Wartungsoperationen auf Metadaten im Hintergrund.
Bei Ansichten und Tabellen verwenden Sie die Spalte LAST_DDL, um den Zeitpunkt der letzten Änderung an einem Objekt zu erfahren.
Der Wert in der Spalte LAST_DDL wird wie folgt aktualisiert:
Wenn eine Tabelle oder Ansicht erstellt wird, ist der LAST_DDL-Zeitstempel derselbe wie der CREATED-Zeitstempel.
Wenn eine Tabelle oder Ansicht gelöscht wird, ist der LAST_DDL-Zeitstempel derselbe wie der DELETED-Zeitstempel.
Die letzten DDL-Daten sind nicht verfügbar für Operationen, die vor dem Hinzufügen der Spalten stattgefunden haben. Die neuen DDL-Felder enthalten so lange
null
-Werte, bis eine DDL-Operation ausgeführt wird.Bei replizierten Datenbanken werden die Felder LAST_DDL und LAST_DDL_BY nur für Objekte der Primärdatenbank aktualisiert. Nach dem Failover werden die Felder LAST_DDL und LAST_DDL_BY für DDL-Operationen von Tabellen und Ansichten der neu heraufgestuften Primärdatenbank aktualisiert. Diese Felder bleiben bei Objekten der nun Sekundärdatenbank unverändert.
Bei Objekten in Sekundärdatenbanken, die während einer Aktualisierungsoperation neu erstellt wurden, sind diese Felder
null
.
Die Spalte LAST_ALTERED gibt nicht unbedingt den letzten Aktualisierungszeitpunkt für externe Tabellen an. Um den letzten Aktualisierungszeitpunkt für eine automatisch aktualisierte externe Tabelle abzurufen, können Sie die Funktion SYSTEM$EXTERNAL_TABLE_PIPE_STATUS verwenden, die Informationen wie den Zeitstempel der letzten Datei, die Snowflake registriert hat, zurückgibt.
Beispiele¶
Abrufen der Gesamtgröße (in Bytes) aller Tabellen in sämtlichen Schemas Ihres Kontos:
SELECT table_schema, SUM(bytes) FROM SNOWFLAKE.ACCOUNT_USAGE.TABLES WHERE deleted IS NULL GROUP BY table_schema;