TRUNCATE TABLE
Dotyczy: Databricks SQL Databricks Runtime
Usuwa wszystkie wiersze z tabeli lub partycji. Tabela nie może być widokiem ani tabelą zewnętrzną ani tymczasową. Aby obcinać wiele partycji jednocześnie, określ partycje w pliku partition_spec
. Jeśli nie partition_spec
zostanie określony, usuwa wszystkie partycje w tabeli.
Uwaga
Usługa Delta Lake nie obsługuje klauzul partycji dla programu TRUNCATE
.
Jeśli tabela jest buforowana, polecenie czyści buforowane dane tabeli i wszystkie jej zależności, które się do niej odwołują. Pamięć podręczna zostanie wypełniona z opóźnieniem, gdy tabela lub zależności będą uzyskiwane przy następnym dostępie.
Składnia
TRUNCATE TABLE table_name [ PARTITION clause ]
Parametry
-
Nazwa tabeli, która ma być obcięta. Nazwa nie może zawierać specyfikacji czasowej ani specyfikacji opcji. Jeśli nie można odnaleźć tabeli usługi Azure Databricks, wystąpi błąd TABLE_OR_VIEW_NOT_FOUND .
-
Opcjonalna specyfikacja partycji. Nieobsługiwane w usłudze Delta Lake.
Przykłady
-- 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
---- ------ ---