ALTER TABLE DROP PARTITION
Löscht eine oder mehrere angegebene Partitionen für die benannte Tabelle.
Syntax
ALTER TABLE table_name DROP [IF EXISTS] PARTITION (partition_spec) [, PARTITION (partition_spec)]
Parameter
- [IF EXISTS]
-
Unterdrückt die Fehlermeldung, wenn die angegebene Partition nicht vorhanden ist.
- PARTITION (partition_spec)
-
Jede
partition_specgibt eine Spaltenname/Spaltenwert-Kombination in Form vonpartition_col_name = partition_col_value [,...]an.
Beispiele
ALTER TABLE orders DROP PARTITION (dt = '2014-05-14', country = 'IN');
ALTER TABLE orders DROP PARTITION (dt = '2014-05-14', country = 'IN'), PARTITION (dt = '2014-05-15', country = 'IN');
Hinweise
Die ALTER TABLE DROP PARTITION-Anweisung bietet keine einzige Syntax zum Löschen aller Partitionen auf einmal oder unterstützt Filterkriterien, um einen Bereich von zu löschenden Partitionen anzugeben.
Um dieses Thema zu umgehen, können Sie die AWS Glue-API GetPartitions- und BatchDeletePartition-Aktionen in Skriptsprache verwenden. Die GetPartitions-Aktion unterstützt komplexe Filterausdrücke wie die in einem SQL-WHERE-Ausdruck. Nachdem Sie GetPartitions verwendet haben, um eine gefilterte Liste der zu löschenden Partitionen zu erstellen, können Sie mit der BatchDeletePartition-Aktion die Partitionen in Batches von 25 löschen.