Dela via


TRUNCATE TABLE

Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime

Tar bort alla rader från en table eller partition(s). table får inte vara en vy eller en extern eller tillfällig table. För att trunkera flera partitioner samtidigt anger du partitionerna i partition_spec. Om ingen partition_spec har angetts tar du bort alla partitioner i table.

Kommentar

Delta Lake stöder inte partition-satser för TRUNCATE.

Om table cachelagras rensar kommandot cachelagrade data för table och alla dess beroenden som refererar till den. Cachen kommer att fyllas latent nästa gång table eller dess beroenden nås.

Syntax

TRUNCATE TABLE table_name [ PARTITION clause ]

Parameters

Exempel

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