Freigeben über


ALTER TABLE PARTITION

Gilt für:check marked yes Databricks SQL check marked yes 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.

Syntax

ALTER TABLE table_name
   { ADD PARTITION clause |
     DROP PARTITION clause |
     PARTITION SET LOCATION clause |
     RENAME PARTITION clause |
     RECOVER PARTITIONS clause }

ADD PARTITION-Klausel

Fügt der Tabelle eine oder mehrere Partitionen hinzu.

Syntax

ADD [IF NOT EXISTS] { PARTITION clause [ LOCATION path ] } [...]

Parameter

  • IF NOT EXISTS

    Eine optionale Klausel, die Azure Databricks anweist, die Anweisung zu ignorieren, wenn die Partition bereits vorhanden ist.

  • PARTITION-Klausel

    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 ein STRING-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.

DROP PARTITION-Klausel

Löscht eine oder mehrere Partitionen aus der Tabelle und optional alle Dateien an den Speicherorten der Partitionen.

Syntax

DROP [ IF EXISTS ] PARTITION clause [, ...] [PURGE]

Parameter

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

  • PARTITION-Klausel

    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.

RENAME PARTITION-Klausel

Ersetzt die Schlüssel einer Partition.

Syntax

from_partition_clause RENAME TO to_partition_clause

Parameter

  • from_partition_clause

    Die Definition der Partition, die umbenannt werden soll.

  • to_partition_clause

    Die neue Definition für diese Partition. Eine Partition mit denselben Schlüsseln darf nicht bereits vorhanden sein.

RECOVER PARTITIONS-Klausel

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.

Syntax

RECOVER PARTITIONS

Parameter

Keine

PARTITION SET LOCATION-Klausel

Verschiebt den Ort einer Partition.

Syntax

PARTITION clause SET LOCATION path

Parameter

  • PARTITION-Klausel

    Gibt die Partition an, für die der Speicherort geändert werden soll.

  • LOCATION path

    path muss ein STRING-Literal sein. Gibt den neuen Speicherort für die Partition an.

    Dateien am ursprünglichen Speicherort werden nicht an den neuen Speicherort verschoben.

Beispiele

Siehe ALTER TABLE-Beispiele.