- Kategorien:
Systemfunktionen (Systeminformationen)
SYSTEM$CLUSTERING_RATIO – Veraltet¶
Berechnet das Clustering-Verhältnis für eine Tabelle, basierend auf einer oder mehreren Spalten in der Tabelle. Das Verhältnis ist eine Zahl zwischen 0
und 100
. Je größer das Verhältnis ist, desto besser ist die Tabelle geclustert.
Das Clustering-Verhältnis für eine Tabelle kann mithilfe beliebiger Spalten in der Tabelle bzw. mit Spalten berechnet werden, die explizit als Gruppierungsschlüssel für die Tabelle definiert wurden. Der Gruppierungsschlüssel für eine Tabelle kann mit CREATE TABLE oder ALTER TABLE definiert werden.
Weitere Informationen zum Clustering-Verhältnis und zu Gruppierungsschlüsseln finden Sie unter Grundlegendes zu Tabellenstrukturen in Snowflake.
Syntax¶
SYSTEM$CLUSTERING_RATIO( '<table_name>' , '( <col1> [ , <col2> ... ] )' [ , '<predicate>' ] )
Argumente¶
table_name
Tabelle, für die Sie das Clustering-Verhältnis berechnen möchten.
col1 [ , col2 ... ]
Spalten in der Tabelle, die zur Berechnung des Clustering-Verhältnisses verwendet werden:
Für eine Tabelle ohne Gruppierungsschlüssel ist dieses Argument erforderlich. Wenn das Argument nicht angegeben wird, wird ein Fehler zurückgegeben.
Bei einer Tabelle mit Gruppierungsschlüssel ist dieses Argument optional. Wenn das Argument weggelassen wird, nutzt Snowflake zur Berechnung der Tiefe den definierten Gruppierungsschlüssel.
Bemerkung
Mit diesem Argument können Sie das Verhältnis für beliebige Spalten in der Tabelle berechnen, unabhängig von dem für die Tabelle definierten Gruppierungsschlüssel.
predicate
Klausel, die den Wertebereich in jenen Spalten filtert, für die das Clustering-Verhältnis berechnet werden soll. Beachten Sie, dass
predicate
am Anfang der Klausel kein WHERE-Schlüsselwort aufweist.
Nutzungshinweise¶
Alle Argumente sind Zeichenfolgen (d. h. sie müssen in einfache Anführungszeichen gesetzt werden).
Wenn
predicate
eine Zeichenfolge enthält, muss diese Zeichenfolge in einfache Anführungszeichen gesetzt werden, die wiederum mit einfachen Anführungszeichen als Escape-Zeichen versehen werden müssen. Beispiel:SYSTEM$CLUSTERING_RATIO( ... , 'col1 = 100 and col2 = ''A''' )
Beispiele¶
Berechnen des Clustering-Verhältnisses für eine Tabelle anhand von zwei Spalten in der Tabelle:
SELECT SYSTEM$CLUSTERING_RATIO('t2', '(col1, col3)'); +-------------------------------+ | SYSTEM$CLUSTERING_RATIO('T2') | |-------------------------------| | 77.1 | +-------------------------------+
Berechnen des Clustering-Verhältnisses für eine Tabelle anhand von zwei Spalten in der Tabelle und einem Prädikat für eine der Spalten:
SELECT SYSTEM$CLUSTERING_RATIO('t2', '(col1, col2)', 'col1 = ''A'''); +-------------------------------+ | SYSTEM$CLUSTERING_RATIO('T2') | |-------------------------------| | 87.7 | +-------------------------------+
Berechnen der Clustering-Tiefe für eine Tabelle mit dem für die Tabelle definierten Gruppierungsschlüssel:
SELECT SYSTEM$CLUSTERING_RATIO('t1'); +-------------------------------+ | SYSTEM$CLUSTERING_RATIO('T1') | |-------------------------------| | 100.0 | +-------------------------------+