TABLES-Ansicht

In dieser Ansicht des Information Schema wird eine Zeile für jede Tabelle und Ansicht in der angegebenen (oder aktuellen) Datenbank angezeigt, einschließlich der Ansichten im INFORMATION_SCHEMA-Schema selbst.

Siehe auch:

Ansicht COLUMNS, VIEWS-Ansicht

Spalten

Spaltenname

Datentyp

Beschreibung

TABLE_CATALOG

TEXT

Datenbank, zu der die Tabelle gehört.

TABLE_SCHEMA

TEXT

Schema, zu dem die Tabelle gehört.

TABLE_NAME

TEXT

Name der Tabelle.

TABLE_OWNER

TEXT

Name der Rolle, der die Tabelle gehört.

TABLE_TYPE

TEXT

Gibt den Tabellentyp an. Gültige Werte sind BASE TABLE, TEMPORARY TABLE, EXTERNAL TABLE, EVENT TABLE, VIEW oder MATERIALIZED VIEW.

IS_TRANSIENT

TEXT

Gibt an, ob es sich um eine transiente Tabelle handelt.

CLUSTERING_KEY

TEXT

Gruppierungsschlüssel für die Tabelle.

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

Erstellungszeit der Tabelle.

LAST_ALTERED

TIMESTAMP_LTZ

Datum und Uhrzeit der letzten Änderung des Objekts. 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:

  • { CREATE | ALTER | DROP | UNDROP } TABLE

  • { CREATE | ALTER | DROP } VIEW

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 DROPPED_USER(<ID>) angezeigt.

Bei gelöschten Benutzern können Sie die <ID> mit der USER_ID-Spalte in der Ansicht USERS verknüpfen.

AUTO_CLUSTERING_ON

BOOLEAN

Gibt an, ob das automatische Clustering für die Tabelle aktiviert ist.

COMMENT

TEXT

Kommentar zu dieser Tabelle.

IS_TEMPORARY

TEXT

Gibt an, ob es sich um eine temporäre Tabelle handelt. Gültige Werte sind YES und NO.

IS_ICEBERG

TEXT

Gibt an, ob die Tabelle eine Iceberg-Tabelle ist. Gültige Werte sind YES und NO.

Nutzungshinweise

  • In der Ansicht werden nur Objekte angezeigt, für die der aktuellen Rolle in der Sitzung Zugriffsrechte erteilt wurden. Die Ansicht berücksichtigt nicht die MANAGE GRANTS-Berechtigung und kann daher weniger Informationen anzeigen als ein SHOW-Befehl, wenn beide von einer Rolle ausgeführt werden, der die MANAGE GRANTS-Berechtigung erteilt wurde.

    Dieses Verhalten gilt auch für andere Berechtigungen auf Kontoebene und für Information Schema-Ansichten, für die es einen entsprechenden SHOW-Befehl gibt.

  • Das Abfragen der sum(bytes) für eine Tabelle stellt nicht die gesamte Speichernutzung dar, da der Betrag keine Verwendung von Time Travel und Fail-safe enthält.

  • Die Ansicht enthält keine Tabellen, die entfernt wurden. Um entfernte Tabellen anzuzeigen, verwenden Sie stattdessen SHOW TABLES.

  • Um nur Tabellen in Ihren Abfragen anzuzeigen, führen Sie eine Filterung mit einer WHERE-Klausel aus, z. B.:

    ... WHERE table_schema != 'INFORMATION_SCHEMA'

  • Die Spalte LAST_ALTERED wird aktualisiert, wenn die folgenden Operationen auf einem Objekt ausgeführt werden:

    • DDL-Operationen

    • DML-Operationen (nur für Tabellen)

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

Beispiele

Rufen Sie die Größe (in Byte) aller Tabellen in allen Schemas der Datenbank mydatabase ab:

SELECT TABLE_SCHEMA,SUM(BYTES)
    FROM mydatabase.information_schema.tables
    GROUP BY TABLE_SCHEMA;
Copy