全部产品
Search
文档中心

MaxCompute:TRUNCATE

更新时间:Jul 02, 2025

Menghapus data dari tabel yang ditentukan.

Hapus data dari tabel non-partisi

Menghapus data dari tabel non-partisi yang ditentukan. Untuk informasi lebih lanjut tentang cara menghapus data dari satu atau beberapa partisi dalam tabel terpartisi, lihat Hapus Data dari Partisi.

  • Sintaks
    truncate table <table_name>;
  • Parameter

    table_name: Wajib. Nama tabel non-partisi yang datanya ingin dihapus.

Hapus data dari partisi

Menghapus data dari partisi yang ditentukan dalam tabel terpartisi.

MaxCompute memungkinkan penghapusan data di partisi yang memenuhi kondisi filter tertentu. Jika Anda ingin menghapus satu atau beberapa partisi yang memenuhi kondisi filter sekaligus, gunakan ekspresi untuk menentukan kondisi tersebut, cocokkan partisi berdasarkan kondisi, lalu hapus data dari partisi yang sesuai.

  • Sintaks
    • Kondisi filter tidak ditentukan.
      truncate table <table_name> partition <pt_spec>[, partition <pt_spec>....];
    • Kondisi filter ditentukan.
      truncate table <table_name> partition <partition_filtercondition>;
  • Parameter
    • table_name: Wajib. Nama tabel terpartisi yang ingin dihapus data partisinya.
    • pt_spec: Wajib. Partisi yang ingin dihapus datanya. Nilai parameter ini berada dalam format (partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col menunjukkan nama kolom, dan partition_col_value menunjukkan nilai kolom. Nama kolom kunci partisi tidak peka huruf besar/kecil, tetapi nilainya peka huruf besar/kecil.
    • partition_filtercondition: Kondisi filter. Parameter ini wajib jika Anda menentukan kondisi filter. Parameter ini tidak peka huruf besar/kecil. Formatnya adalah sebagai berikut:
      partition_filtercondition
          : partition (<partition_col> <relational_operators> <partition_col_value>)
          | partition (scalar(<partition_col>) <relational_operators> <partition_col_value>)
          | partition (<partition_filtercondition1> AND|OR <partition_filtercondition2>)
          | partition (NOT <partition_filtercondition>)
          | partition (<partition_filtercondition1>)[,partition (<partition_filtercondition2>), ...]
      • partition_col: Nama kolom kunci partisi.
      • relational_operators: Operator relasional. Untuk informasi lebih lanjut, lihat Operator.
      • partition_col_value: Nilai dalam kolom kunci partisi. Nilai tersebut dapat berupa nilai perbandingan atau ekspresi reguler. Tipe data nilai ini harus sama dengan tipe data kolom kunci partisi.
      • scalar(): Fungsi skalar. Fungsi skalar menghasilkan skalar berdasarkan nilai input, memproses nilai-nilai dalam kolom yang ditentukan oleh partition_col, dan menggunakan relational_operators untuk membandingkan nilai-nilai yang diproses dengan partition_col_value.
      • Kondisi filter yang digunakan untuk menghapus partisi mendukung operator logika NOT, AND, dan OR. Anda dapat menggunakan PARTITION (<NOT partition_filtercondition>) untuk mendapatkan himpunan komplemen dari kondisi filter yang ditentukan. Anda dapat menggunakan PARTITION (<partition_filtercondition1 ANDOR partition_filtercondition2>) untuk mendapatkan kondisi yang digunakan untuk mencocokkan partisi yang ingin dihapus.
      • Beberapa klausa PARTITION (<partition_filtercondition>) didukung. Jika klausa-klausa ini dipisahkan oleh koma (,), hubungan logis antara klausa adalah OR. Kondisi filter diperoleh berdasarkan hubungan logis OR dan digunakan untuk mencocokkan partisi yang ingin dihapus.
  • Contoh
    • Kondisi filter tidak ditentukan.
      -- Hapus data dari partisi tabel sale_detail. Partisi menyimpan catatan penjualan di wilayah Hangzhou, Tiongkok pada Desember 2013. 
      truncate table sale_detail partition(sale_date='201312',region='hangzhou'); 
      -- Hapus data dari dua partisi tabel sale_detail. Partisi menyimpan catatan penjualan di wilayah Hangzhou dan Shanghai, Tiongkok pada Desember 2013. 
      truncate table sale_detail partition(sale_date='201312',region='hangzhou'),  partition(sale_date='201312',region='shanghai');
    • Kondisi filter ditentukan.
      -- Hapus data dari beberapa partisi tabel sale_detail. Partisi menyimpan catatan penjualan yang nilainya di kolom sale_date dimulai dengan 2013 di wilayah Hangzhou, Tiongkok. 
      truncate table sale_detail partition(sale_date like '2013%' and region='hangzhou');

Pernyataan terkait

  • CREATE TABLE: Membuat tabel non-partisi, tabel terpartisi, tabel eksternal, atau tabel terkluster.
  • ALTER TABLE: Mengubah informasi tentang tabel.
  • DROP TABLE: Menghapus tabel terpartisi atau tabel non-partisi.
  • DESC TABLE/VIEW: Melihat informasi tentang tabel internal MaxCompute, tampilan, tampilan material, tabel eksternal, tabel terkluster, atau tabel transaksional.
  • SHOW: Melihat pernyataan SQL DDL yang digunakan untuk membuat tabel, atau menanyakan informasi semua tabel dan tampilan dalam proyek atau informasi semua partisi dalam tabel.