Anda dapat mengeksekusi pernyataan TRUNCATE TABLE untuk menghapus data dari sebuah tabel atau partisi tertentu dalam tabel.
Sintaksis
- Hapus data dari sebuah tabel.
TRUNCATE TABLE db_name.table_name; - Hapus data dari partisi tertentu dalam sebuah tabel.
TRUNCATE TABLE db_name.table_name PARTITION partition_name[,...];Tipe data nama partisi adalah BIGINT. Anda dapat mengeksekusi pernyataan SQL berikut untuk memeriksa nama semua partisi dalam sebuah tabel:
SELECT partition_name from information_schema.partitions WHERE table_name = 'your_table_name' ORDER BY partition_name DESC LIMIT 100;
Peringatan
- Ketika Anda mengeksekusi pernyataan
TRUNCATE TABLEuntuk menghapus data dari sebuah tabel, skema tabel tidak akan dihapus. - Ketika backup database sedang berlangsung, pernyataan
TRUNCATE TABLEtidak dapat dieksekusi. Sebuah kesalahan akan dikembalikan jika Anda mengeksekusi pernyataan ini. - Jika Anda mengeksekusi pernyataan
TRUNCATE TABLEketika kluster Anda memiliki tugas BUILD dalam keadaan berjalan, sebuah kesalahan akan dikembalikan. Anda harus menunggu tugas BUILD selesai dan mengeksekusi pernyataan tersebut lagi. Untuk informasi lebih lanjut tentang cara memeriksa status tugas BUILD, lihat Periksa status pekerjaan BUILD.
Contoh
- Hapus data dari tabel customer.
TRUNCATE TABLE adb_demo.customer; - Hapus data dari partisi tertentu dalam tabel customer.
TRUNCATE TABLE adb_demo.customer PARTITION 20170103,20170104,20170108;