ALTER TABLE PARTITION
Gilt für: Databricks SQL
Databricks Runtime
Fügt einer Tabelle Partitionen hinzu, trennt sie, benennt sie um oder stellt sie wieder her.
Das Verwalten von Partitionen wird für Delta Lake-Tabellen nicht unterstützt.
ALTER TABLE table_name
{ ADD PARTITION clause |
DROP PARTITION clause |
PARTITION SET LOCATION clause |
RENAME PARTITION clause |
RECOVER PARTITIONS clause }
Fügt der Tabelle eine oder mehrere Partitionen hinzu.
ADD [IF NOT EXISTS] { PARTITION clause [ LOCATION path ] } [...]
IF NOT EXISTS
Eine optionale Klausel, die Azure Databricks anweist, die Anweisung zu ignorieren, wenn die Partition bereits vorhanden ist.
-
Eine Partition, die hinzugefügt werden soll. Die Partitionsschlüssel müssen mit der Partitionierung der Tabelle übereinstimmen und Werten zugeordnet sein. Wenn die Partition bereits vorhanden ist, wird ein Fehler ausgelöst, sofern nicht
IF NOT EXISTS
angegeben wurde. LOCATION path
path
muss einSTRING
-Literal sein, das einen optionalen Speicherort darstellt, der auf die Partition verweist.Wird kein Speicherort angegeben, wird der Speicherort vom Speicherort der Tabelle und den Partitionsschlüsseln abgeleitet.
Wenn am Speicherort Dateien vorhanden sind, füllen sie die Partition und müssen mit der Datenquelle (
data_source
) der Tabelle und den zugehörigen Optionen kompatibel sein.
Löscht eine oder mehrere Partitionen aus der Tabelle und optional alle Dateien an den Speicherorten der Partitionen.
DROP [ IF EXISTS ] PARTITION clause [, ...] [PURGE]
IF EXISTS
Wenn Sie
IF EXISTS
angeben, ignoriert Azure Databricks einen Versuch, Partitionen zu löschen, die nicht vorhanden sind. Andernfalls verursachen nicht vorhandene Partitionen einen Fehler.-
Gibt eine Partition an, die gelöscht werden soll. Wenn nur ein Teil einer Partition angegeben wird, wird ein Segment der Partitionen gelöscht.
PURGE
Falls festgelegt, muss der Tabellenkatalog Partitionsdaten entfernen und dabei den Papierkorbordner überspringen, auch wenn für den Katalog ein Papierkorbordner konfiguriert ist. Die Option gilt nur für verwaltete Tabellen. Sie ist nur wirksam, wenn folgende Voraussetzungen erfüllt sind:
Das Dateisystem unterstützt einen Papierkorbordner. Der Katalog wurde so konfiguriert, dass gelöschte Partitionen in den Papierkorbordner verschoben werden. Es gibt keinen Papierkorbordner in AWS S3, sodass er nicht wirksam ist.
Es ist nicht erforderlich, Dateien nach dem Löschen von Partitionen manuell zu löschen.
Ersetzt die Schlüssel einer Partition.
from_partition_clause RENAME TO to_partition_clause
-
Die Definition der Partition, die umbenannt werden soll.
-
Die neue Definition für diese Partition. Eine Partition mit denselben Schlüsseln darf nicht bereits vorhanden sein.
Diese Klausel gilt nicht für Delta Lake-Tabellen.
Weist Azure Databricks an, den Speicherort der Tabelle zu überprüfen und der Tabelle alle Dateien hinzuzufügen, die dem Dateisystem direkt hinzugefügt wurden.
RECOVER PARTITIONS
Keine
Verschiebt den Ort einer Partition.
PARTITION clause SET LOCATION path
-
Gibt die Partition an, für die der Speicherort geändert werden soll.
LOCATION path
path
muss einSTRING
-Literal sein. Gibt den neuen Speicherort für die Partition an.Dateien am ursprünglichen Speicherort werden nicht an den neuen Speicherort verschoben.
Siehe ALTER TABLE-Beispiele.