TRUNCATE TABLE
Gilt für: Databricks SQL Databricks Runtime
Entfernt alle Zeilen aus einer Tabelle oder Partitionen. Die Tabelle darf keine Sicht oder eine externe bzw. temporäre Tabelle sein. Um mehrere Partitionen gleichzeitig zu entfernen, geben Sie die Partitionen in partition_spec
an. Wird partition_spec
nicht angegeben, werden alle Partitionen in der Tabelle entfernt.
Hinweis
Delta Lake unterstützt keine Partitionsklauseln für TRUNCATE
.
Wenn die Tabelle zwischengespeichert wurde, löscht der Befehl zwischengespeicherte Daten der Tabelle und alle abhängigen Daten, die darauf verweisen. Der Cache wird beim nächsten Zugriff auf die Tabelle oder die abhängigen Daten verzögert gefüllt.
Syntax
TRUNCATE TABLE table_name [ PARTITION clause ]
Parameter
-
Der Name der zu kürzenden Tabelle. Der Name darf keine temporale Spezifikation enthalten. Wenn die Tabelle nicht gefunden werden kann, löst Azure Databricks den Fehler TABLE_OR_VIEW_NOT_FOUND aus.
-
Optionale Angabe einer Partition. Wird für Delta Lake nicht unterstützt.
Beispiele
-- Create table Student with partition
> CREATE TABLE Student (name STRING, rollno INT) PARTITIONED BY (age INT);
> SELECT * FROM Student;
name rollno age
---- ------ ---
ABC 1 10
DEF 2 10
XYZ 3 12
-- Remove all rows from the table in the specified partition
> TRUNCATE TABLE Student partition(age=10);
-- After truncate execution, records belonging to partition age=10 are removed
> SELECT * FROM Student;
name rollno age
---- ------ ---
XYZ 3 12
-- Remove all rows from the table from all partitions
> TRUNCATE TABLE Student;
> SELECT * FROM Student;
name rollno age
---- ------ ---