Condividi tramite


TRUNCATE TABLE

Si applica a:segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime

Rimuove tutte le righe da un table o da un partition(s). Il table non deve essere una visualizzazione o un tableesterno o temporaneo. Per troncare più partizioni contemporaneamente, specificare le partizioni in partition_spec. Se non viene specificato alcun partition_spec, rimuove tutte le partizioni nel table.

Nota

Delta Lake non supporta clausole di partition per TRUNCATE.

Se la table è nella cache, il comando elimina i dati nella cache di table e di tutti i suoi dipendenti che vi fanno riferimento. La cache verrà riempita in modo pigro quando l'table o i suoi dipendenti saranno accessi la prossima volta.

Sintassi

TRUNCATE TABLE table_name [ PARTITION clause ]

Parameters

Esempi

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