MaxCompute memungkinkan Anda melakukan berbagai operasi pada partisi tabel yang sudah ada, seperti menambahkan, menghapus, dan memodifikasi nilai partisi sesuai kebutuhan.
Indeks fitur
Berikut adalah perintah SQL MaxCompute untuk operasi partisi.
Operasi | Fitur | Peran | Titik masuk |
Tambahkan partisi baru ke tabel partisi yang sudah ada. | Pengguna yang memiliki izin Alter pada tabel | Anda dapat menjalankan perintah dalam topik ini di platform berikut: | |
Perbarui | |||
Modifikasi nilai suatu partisi dalam tabel partisi. | |||
Gabungkan beberapa partisi dari suatu tabel menjadi satu partisi. Operasi ini menghapus informasi dimensi dari partisi sumber dan memindahkan datanya ke partisi tujuan. | |||
Daftarkan semua partisi dalam suatu tabel. | |||
Lihat informasi tentang partisi tertentu dalam tabel partisi. | |||
Hapus partisi dari tabel partisi yang sudah ada. | |||
Bersihkan data dari partisi yang ditentukan. |
Cakupan
Tipe data: Anda dapat menggunakan bidang dengan tipe data TINYINT, SMALLINT, INT, BIGINT, CHAR, VARCHAR, dan STRING sebagai kolom kunci partisi.
Tingkat partisi untuk satu tabel: Satu tabel dapat memiliki maksimal enam tingkat partisi.
Jumlah partisi dalam satu tabel: Satu tabel dapat memiliki maksimal 60.000 partisi.
Jumlah maksimum partisi yang dapat dikueri sekaligus: Anda dapat mengkueri maksimal 10.000 partisi sekaligus.
Operasi penggabungan partisi tidak didukung untuk tabel partisi transaksional.
Tambah partisi
Anda dapat menambahkan partisi baru ke tabel partisi yang sudah ada.
Batasan
Untuk tabel partisi multi-level, Anda harus menentukan nilai untuk semua kolom kunci partisi saat menambahkan partisi.
Anda hanya dapat menambahkan nilai partisi, bukan bidang partisi.
Format perintah
ALTER TABLE <table_name> ADD [IF NOT EXISTS] PARTITION <pt_spec> [PARTITION <pt_spec> PARTITION <pt_spec>...];Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel partisi tempat Anda ingin menambahkan partisi.
IF NOT EXISTS
Tidak
Jika Anda tidak menentukan IF NOT EXISTS dan partisi dengan nama yang sama sudah ada, pernyataan gagal dan mengembalikan error.
pt_spec
Ya
Partisi yang akan ditambahkan. Formatnya adalah
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col adalah bidang partisi, dan partition_col_value adalah nilai partisi. Nama bidang partisi tidak peka huruf besar/kecil. Nilai partisi peka huruf besar/kecil.Contoh
Anda dapat membuat tabel partisi bernama
sale_detail. Untuk informasi lebih lanjut tentang cara membuat dan menghapus tabel, lihat Buat dan hapus tabel.CREATE TABLE IF NOT EXISTS sale_detail( shop_name STRING, customer_id STRING, total_price DOUBLE) PARTITIONED BY (sale_date STRING, region STRING);Contoh 1: Tambahkan partisi ke tabel
sale_detailuntuk menyimpan catatan penjualan wilayah Hangzhou pada Desember 2025.ALTER TABLE sale_detail ADD IF NOT EXISTS PARTITION (sale_date='202512', region='hangzhou');Contoh 2: Tambahkan dua partisi ke tabel
sale_detailsecara bersamaan untuk menyimpan catatan penjualan wilayah Beijing dan Shanghai pada Desember 2025.ALTER TABLE sale_detail ADD IF NOT EXISTS PARTITION (sale_date='202512', region='beijing') PARTITION (sale_date='202512', region='shanghai');Contoh 3: Tambahkan partisi ke tabel
sale_detaildan tentukan hanya bidang partisisale_date. Operasi ini mengembalikan error karena Anda harus menentukan kedua bidang partisisale_datedanregion.ALTER TABLE sale_detail ADD IF NOT EXISTS PARTITION (sale_date='20260111'); -- Pesan error berikut dikembalikan: FAILED: ODPS-0130071:[1,58] Semantic analysis exception - provided partition spec does not match table partition specContoh 4: Tambahkan partisi ke tabel Delta Lake
-- Buat tabel Delta Lake. CREATE TABLE delta_table_test_par ( pk BIGINT NOT NULL PRIMARY KEY, val BIGINT NOT NULL) PARTITIONED BY (dd STRING, hh STRING) TBLPROPERTIES ("transactional"="true"); -- Tambahkan partisi. ALTER TABLE delta_table_test_par ADD PARTITION (dd='01', hh='01'); CREATE TABLE delta_table_test_nonpar ( pk BIGINT NOT NULL PRIMARY KEY, val BIGINT NOT NULL) TBLPROPERTIES ("transactional"="true");Contoh 5: Modifikasi properti tabel Delta Lake PK
-- Perbarui jumlah bucket untuk tabel Delta Lake Primary Key (PK) terpartisi. ALTER TABLE delta_table_test_par SET tblproperties("write.bucket.num"="64"); -- Perbarui jumlah bucket untuk tabel Delta Lake PK non-partisi. Setelah pembaruan, data historis didistribusikan ulang berdasarkan jumlah bucket baru. ALTER TABLE delta_table_test_nonpar REWRITE tblproperties("write.bucket.num"="128"); -- Perbarui properti retain. Properti ini menentukan rentang waktu dalam jam di mana Anda dapat mengkueri status historis data menggunakan Time Travel. ALTER TABLE delta_table_test_par SET tblproperties("acid.data.retain.hours"="60");
Perbarui waktu modifikasi terakhir partisi
SQL MaxCompute menyediakan operasi touch untuk memperbarui LastModifiedTime suatu partisi dalam tabel partisi. Operasi ini mengubah LastModifiedTime menjadi waktu saat ini. MaxCompute kemudian menganggap data telah berubah dan menghitung ulang siklus hidupnya.
Batasan
Untuk tabel partisi multi-level, Anda harus menentukan nilai untuk semua kolom kunci partisi.
Format perintah
ALTER TABLE <table_name> touch PARTITION (<pt_spec>);Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel partisi yang partisinya ingin Anda perbarui. Jika tabel tidak ada, error dikembalikan.
pt_spec
Ya
Informasi tentang partisi yang waktu modifikasi terakhirnya ingin Anda perbarui. Formatnya adalah
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col adalah bidang partisi, dan partition_col_value adalah nilai partisi. Jika bidang partisi atau nilai partisi yang ditentukan tidak ada, error dikembalikan.Contoh
-- Perbarui LastModifiedTime partisi sale_date='202512', region='shanghai' dalam tabel sale_detail. ALTER TABLE sale_detail touch PARTITION (sale_date='202512', region='shanghai');
Modifikasi nilai partisi
SQL MaxCompute mendukung operasi rename untuk mengubah nilai partisi suatu tabel partisi.
Batasan
Anda tidak dapat memodifikasi nama kolom kunci partisi; hanya nilai yang sesuai dengan kolom kunci partisi tersebut yang dapat diubah.
Untuk tabel partisi multi-level, Anda harus menentukan nilai untuk semua kolom kunci partisi.
Format perintah
ALTER TABLE <table_name> PARTITION (<pt_spec>) rename TO PARTITION (<new_pt_spec>);Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel yang nilai partisinya ingin Anda modifikasi.
pt_spec
Ya
Informasi tentang partisi yang nilainya ingin Anda modifikasi. Formatnya adalah
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col adalah bidang partisi, dan partition_col_value adalah nilai partisi. Jika bidang partisi atau nilai partisi yang ditentukan tidak ada, error dikembalikan.new_pt_spec
Ya
Informasi tentang partisi setelah modifikasi. Formatnya adalah
(partition_col1 = new_partition_col_value1, partition_col2 = new_partition_col_value2, ...). partition_col adalah bidang partisi, dan new_partition_col_value adalah nilai partisi baru.Contoh
-- Modifikasi nilai partisi dalam tabel sale_detail. ALTER TABLE sale_detail PARTITION (sale_date = '201312', region = 'hangzhou') rename TO PARTITION (sale_date = '201310', region = 'beijing');
Gabung partisi
SQL MaxCompute menyediakan operasi merge partition untuk menggabungkan beberapa partisi dari tabel partisi yang sama menjadi satu partisi. Data dari partisi sumber dipindahkan ke partisi tujuan, lalu partisi sumber dihapus.
Batasan
Tabel asing tidak didukung. Jika Anda menggabungkan partisi dari tabel terkluster, partisi hasilnya tidak lagi terkluster.
Anda dapat menggabungkan maksimal 4.000 partisi sekaligus.
Format perintah
ALTER TABLE <table_name> MERGE [IF EXISTS] PARTITION (<predicate>) [, PARTITION(<predicate2>) ...] overwrite PARTITION (<fullpartitionSpec>) [purge];Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel partisi yang partisinya ingin Anda gabungkan.
IF EXISTS
Tidak
Jika Anda tidak menentukan IF EXISTS dan partisi tidak ada, pernyataan gagal dan mengembalikan error. Jika Anda menentukan IF EXISTS tetapi tidak ada partisi yang memenuhi kondisi
merge, tidak ada partisi baru yang dibuat. Jika data sumber dimodifikasi secara konkuren oleh operasi sepertiinsert,rename, ataudropselama eksekusi, error dikembalikan bahkan jika Anda menentukan IF EXISTS.predicate
Ya
Kondisi yang harus dipenuhi oleh partisi yang akan digabungkan.
fullpartitionSpec
Ya
Informasi tentang partisi tujuan.
purge
Tidak
Kata kunci opsional. Jika Anda menentukan kata kunci ini, direktori sesi akan dibersihkan. Secara default, log dalam tiga hari terakhir dibersihkan. Untuk informasi lebih lanjut, lihat Purge.
Contoh
Contoh 1: Gabungkan partisi yang memenuhi kondisi tertentu ke partisi tujuan.
-- Lihat partisi dari tabel partisi. SHOW PARTITIONS sale_detail; -- Hasil contoh: sale_date=202512/region=beijing sale_date=202512/region=shanghai sale_date=202602/region=beijin -- Gabungkan semua partisi yang memenuhi kondisi sale_date='201512' ke partisi sale_date='202601', region='hangzhou'. ALTER TABLE sale_detail MERGE PARTITION(sale_date='202512') overwrite PARTITION(sale_date='202601', region='hangzhou'); -- Lihat partisi setelah penggabungan. SHOW PARTITIONS sale_detail; -- Hasil contoh: sale_date=202601/region=hangzhou sale_date=202602/region=beijingContoh 2: Gabungkan beberapa partisi yang ditentukan ke partisi tujuan.
-- Gabungkan beberapa partisi yang ditentukan. ALTER TABLE sale_detail MERGE IF EXISTS PARTITION(sale_date='202601', region='hangzhou'), PARTITION(sale_date='202602', region='beijing') overwrite PARTITION(sale_date='202603', region='shanghai') purge; -- Lihat partisi dari tabel partisi. SHOW PARTITIONS sale_detail; -- Hasil contoh: sale_date=202603/region=shanghai
Daftar semua partisi
Anda dapat mendaftarkan semua partisi dalam suatu tabel. Jika tabel tidak ada atau bukan tabel partisi, operasi ini mengembalikan error.
Format perintah
SHOW PARTITIONS <table_name>;Parameter
table_name: Wajib. Nama tabel partisi yang partisinya ingin Anda lihat.
Contoh
-- Daftarkan semua partisi dalam tabel sale_detail. SHOW PARTITIONS sale_detail; -- Hasil contoh: sale_date=202603/region=shanghai
Lihat informasi partisi
Anda dapat melihat informasi tentang partisi tertentu dalam tabel partisi.
Format perintah
DESC <table_name> PARTITION (<pt_spec>);Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel partisi yang informasi partisinya ingin Anda lihat.
pt_spec
Ya
Informasi tentang partisi yang ingin Anda lihat. Formatnya adalah
partition_col1=col1_value1, partition_col2=col2_value1.... Untuk tabel partisi multi-level, Anda harus menentukan semua nilai partisi.Contoh
-- Kueri informasi partisi dalam tabel partisi sale_detail. DESC sale_detail PARTITION (sale_date='202603',region='shanghai'); -- Hasil berikut dikembalikan: +------------------------------------------------------------------------------------+ | PartitionSize: 0 | +------------------------------------------------------------------------------------+ | CreateTime: 2026-01-13 11:35:49 | | LastDDLTime: 2026-01-13 11:35:49 | | LastModifiedTime: 2026-01-13 11:35:49 | +------------------------------------------------------------------------------------+ OK
Hapus partisi
Anda dapat menghapus partisi dari tabel partisi yang sudah ada.
MaxCompute memungkinkan Anda menghapus partisi berdasarkan kondisi filter. Untuk menghapus beberapa partisi yang memenuhi aturan tertentu sekaligus, Anda dapat menentukan ekspresi sebagai kondisi filter guna mencocokkan dan menghapus partisi dalam operasi batch.
Batasan
Setiap klausa filter partisi hanya dapat mengakses satu kolom kunci partisi.
Fungsi yang digunakan dalam ekspresi harus berupa fungsi skalar bawaan.
Catatan
Setelah Anda menghapus partisi, penggunaan penyimpanan proyek MaxCompute Anda berkurang.
Anda dapat menggunakan fitur Lifecycle MaxCompute untuk menghapus partisi lama secara otomatis.
Format perintah
Tanpa kondisi filter
-- Hapus satu partisi sekaligus. ALTER TABLE <table_name> DROP [IF EXISTS] PARTITION <pt_spec>; -- Hapus beberapa partisi sekaligus. ALTER TABLE <table_name> DROP [IF EXISTS] PARTITION <pt_spec>,PARTITION <pt_spec>[,PARTITION <pt_spec>....];Kondisi filter
ALTER TABLE <table_name> DROP [IF EXISTS] PARTITION <partition_filtercondition>;
Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel partisi tempat Anda ingin menghapus partisi.
IF EXISTS
Tidak
Jika Anda tidak menentukan IF EXISTS dan partisi tidak ada, error dikembalikan.
pt_spec
Ya
Partisi yang akan dihapus. Formatnya adalah
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col adalah bidang partisi, dan partition_col_value adalah nilai partisi. Nama bidang partisi tidak peka huruf besar/kecil. Nilai partisi peka huruf besar/kecil.partition_filtercondition
Tidak
Wajib saat Anda menentukan kondisi filter. Kondisi filter partisi. Parameter ini tidak peka huruf besar/kecil. Formatnya 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>), ...]Berikut penjelasan detailnya.
partition_col: Nama partisi.
relational_operators: Operator relasional. Untuk informasi lebih lanjut, lihat Operator.
partition_col_value: Nilai atau ekspresi reguler yang akan dibandingkan dengan nilai kolom kunci partisi. Tipe data nilai harus sama dengan tipe data kolom kunci partisi.
scalar(): Fungsi skalar. Fungsi skalar menghasilkan nilai skalar berdasarkan nilai input. Nilai kolom kunci partisi (partition_col) diproses lalu dibandingkan dengan partition_col_value berdasarkan relational_operators yang ditentukan.
Kondisi filter partisi mendukung operator logika NOT, AND, dan OR. Anda dapat menggunakan klausa filter NOT untuk mendapatkan komplemen dari aturan filter. Anda juga dapat menggunakan beberapa klausa filter dengan operator AND atau OR untuk membentuk aturan pencocokan partisi keseluruhan.
Anda dapat menentukan beberapa klausa filter partisi. Jika beberapa klausa filter partisi dipisahkan dengan koma (,), klausa tersebut digabung menggunakan operator logika OR untuk membentuk aturan pencocokan partisi keseluruhan.
Contoh
Tanpa kondisi filter
-- Hapus partisi yang berisi catatan penjualan wilayah Shanghai pada Maret 2026 dari tabel sale_detail. ALTER TABLE sale_detail DROP IF EXISTS PARTITION(sale_date='202603',region='shanghai'); -- Hapus dua partisi yang berisi catatan penjualan wilayah Hangzhou dan Shanghai pada Desember 2024 dari tabel sale_detail. ALTER TABLE sale_detail DROP IF EXISTS PARTITION(sale_date='202412',region='hangzhou'),PARTITION(sale_date='202412',region='shanghai');Tentukan kriteria filter
Tabel partisi
-- Buat tabel partisi. CREATE TABLE IF NOT EXISTS sale_detail_del( shop_name STRING, customer_id STRING, total_price DOUBLE) partitioned BY (sale_date STRING); -- Tambahkan partisi. ALTER TABLE sale_detail_del ADD if NOT EXISTS PARTITION (sale_date= '201910') PARTITION (sale_date= '201911') PARTITION (sale_date= '201912') PARTITION (sale_date= '202001') PARTITION (sale_date= '202002') PARTITION (sale_date= '202003') PARTITION (sale_date= '202004') PARTITION (sale_date= '202005') PARTITION (sale_date= '202006') PARTITION (sale_date= '202007'); -- Hapus partisi dalam batch. ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date < '201911'); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date >= '202007'); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date LIKE '20191%'); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date IN ('202002','202004','202006')); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date BETWEEN '202001' AND '202007'); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(substr(sale_date, 1, 4) = '2020'); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date < '201912' OR sale_date >= '202006'); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date > '201912' AND sale_date <= '202004'); ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(NOT sale_date > '202004'); -- Beberapa ekspresi filter partisi didukung. Ekspresi digabung menggunakan operator logika OR. ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date < '201911'), PARTITION(sale_date >= '202007'); -- Tambahkan partisi dalam format lain. ALTER TABLE sale_detail_del ADD IF NOT EXISTS PARTITION (sale_date= '2019-10-05') PARTITION (sale_date= '2019-10-06') PARTITION (sale_date= '2019-10-07'); -- Hapus partisi dalam batch menggunakan ekspresi reguler untuk mencocokkan partisi. ALTER TABLE sale_detail_del DROP IF EXISTS PARTITION(sale_date RLIKE '2019-\\d+-\\d+');Tabel partisi multi-level
-- Buat tabel partisi multi-level. CREATE TABLE IF NOT EXISTS region_sale_detail( shop_name STRING, customer_id STRING, total_price DOUBLE) partitioned BY (sale_date STRING , region STRING ); -- Tambahkan partisi. ALTER TABLE region_sale_detail ADD IF NOT EXISTS PARTITION (sale_date= '201910',region = 'shanghai') PARTITION (sale_date= '201911',region = 'shanghai') PARTITION (sale_date= '201912',region = 'shanghai') PARTITION (sale_date= '202001',region = 'shanghai') PARTITION (sale_date= '202002',region = 'shanghai') PARTITION (sale_date= '201910',region = 'beijing') PARTITION (sale_date= '201911',region = 'beijing') PARTITION (sale_date= '201912',region = 'beijing') PARTITION (sale_date= '202001',region = 'beijing') PARTITION (sale_date= '202002',region = 'beijing'); -- Jalankan pernyataan berikut untuk menghapus partisi dari tabel partisi multi-level dalam batch. Dua kondisi pencocokan digabung menggunakan operator logika OR. Semua partisi dengan sale_date kurang dari 201911 atau region beijing dihapus. ALTER TABLE region_sale_detail DROP IF EXISTS PARTITION(sale_date < '201911'),PARTITION(region = 'beijing'); -- Untuk menghapus partisi dengan sale_date kurang dari 201911 dan region beijing, gunakan metode berikut. ALTER TABLE region_sale_detail DROP IF EXISTS PARTITION(sale_date < '201911', region = 'beijing');Saat menghapus partisi dari tabel partisi multi-level dalam operasi batch, Anda tidak dapat membuat kondisi komposit berdasarkan beberapa kolom kunci partisi dalam klausa filter
partitionuntuk mencocokkan partisi. Pernyataan berikut mengembalikan pesan error:FAILED: ODPS-0130071:[1,82] Semantic analysis exception - invalid column reference region, partition expression must have one and only one column reference.-- Satu klausa filter partisi hanya dapat mengakses satu kolom kunci partisi. Pernyataan berikut mengembalikan error. ALTER TABLE region_sale_detail DROP IF EXISTS PARTITION(sale_date < '201911' AND region = 'beijing');
Bersihkan data dari partisi
Anda dapat membersihkan data dari partisi tertentu dalam tabel partisi.
MaxCompute memungkinkan Anda membersihkan data dari partisi berdasarkan kondisi filter. Untuk membersihkan data dari satu atau beberapa partisi yang memenuhi aturan tertentu sekaligus, Anda dapat menentukan ekspresi sebagai kondisi filter guna mencocokkan partisi dan membersihkan datanya dalam operasi batch.
Format perintah
Tanpa kondisi filter
TRUNCATE TABLE <table_name> PARTITION <pt_spec>[, PARTITION <pt_spec>....];Tentukan kriteria filter
TRUNCATE TABLE <table_name> PARTITION <partition_filtercondition>;
Parameter
Parameter
Wajib
Deskripsi
table_name
Ya
Nama tabel partisi tempat Anda ingin membersihkan data partisi.
pt_spec
Ya
Partisi tempat Anda ingin membersihkan data. Formatnya adalah
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...). partition_col adalah bidang partisi, dan partition_col_value adalah nilai partisi. Nama bidang partisi tidak peka huruf besar/kecil. Nilai partisi peka huruf besar/kecil.partition_filtercondition
Tidak
Wajib saat Anda menentukan kondisi filter. Kondisi filter partisi. Parameter ini tidak peka huruf besar/kecil. Formatnya 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>), ...]Detailnya sebagai berikut:
partition_col: Nama partisi.
relational_operators: Operator relasional. Untuk informasi lebih lanjut, lihat Operator.
partition_col_value: Nilai atau ekspresi reguler yang akan dibandingkan dengan nilai kolom kunci partisi. Tipe data nilai harus sama dengan tipe data kolom kunci partisi.
scalar(): Fungsi skalar. Fungsi skalar menghasilkan nilai skalar berdasarkan nilai input. Nilai kolom kunci partisi (partition_col) diproses lalu dibandingkan dengan partition_col_value berdasarkan relational_operators yang ditentukan.
Kondisi filter partisi mendukung operator logika NOT, AND, dan OR. Anda dapat menggunakan klausa filter NOT untuk mendapatkan komplemen dari aturan filter. Anda juga dapat menggunakan beberapa klausa filter dengan operator AND atau OR untuk membentuk aturan pencocokan partisi keseluruhan.
Anda dapat menentukan beberapa klausa filter partisi. Jika beberapa klausa filter partisi dipisahkan dengan koma (,), klausa tersebut digabung menggunakan operator logika OR untuk membentuk aturan pencocokan partisi keseluruhan.
Contoh
Tanpa kondisi filter
-- Bersihkan partisi yang berisi catatan penjualan wilayah Hangzhou pada Januari 2026 dari tabel sale_detail. TRUNCATE TABLE sale_detail PARTITION(sale_date='202601',region='hangzhou'); -- Bersihkan dua partisi yang berisi catatan penjualan wilayah Hangzhou dan Shanghai pada Desember 2025 dari tabel sale_detail. TRUNCATE TABLE sale_detail PARTITION(sale_date='202512',region='hangzhou'), PARTITION(sale_date='202512',region='shanghai');Tentukan kriteria filter
-- Bersihkan beberapa partisi yang berisi catatan penjualan wilayah Hangzhou dengan sale_date yang dimulai dengan 2025 dari tabel sale_detail. TRUNCATE TABLE sale_detail PARTITION(sale_date LIKE '2025%' AND region='hangzhou');Bersihkan tabel Delta Lake non-partisi
-- Bersihkan tabel non-partisi. Tabel harus berupa tabel non-partisi. Jika tidak, error dikembalikan. TRUNCATE TABLE non_par_table;
Referensi
Untuk informasi lebih lanjut tentang perintah operasi tabel, lihat topik berikut: