Delen via


TRUNCATE TABLE

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime

Hiermee verwijdert u alle rijen uit een tabel of partitie(s). De tabel mag geen weergave of een externe of tijdelijke tabel zijn. Als u meerdere partities tegelijk wilt afkappen, geeft u de partities op in partition_spec. Als er geen partition_spec is opgegeven, verwijdert u alle partities in de tabel.

Notitie

Delta Lake biedt geen ondersteuning voor partitieclausules voor TRUNCATE.

Als de tabel in de cache is opgeslagen, worden met de opdracht gegevens in de cache van de tabel en alle afhankelijke gegevens gewist die ernaar verwijzen. De cache wordt lazily gevuld wanneer de tabel of de afhankelijke items de volgende keer worden geopend.

Syntaxis

TRUNCATE TABLE table_name [ PARTITION clause ]

Parameters

  • table_name

    De naam van de tabel die moet worden afgekapt. De naam mag geen tijdelijke specificatie bevatten. Als de tabel niet kan worden gevonden, genereert Azure Databricks een TABLE_OR_VIEW_NOT_FOUND fout.

  • PARTITION-component

    Optionele specificatie van een partitie. Niet ondersteund voor Delta Lake.

Voorbeelden

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