Window
DuckDB
NTILE
Membagi baris menjadi n kelompok (buckets) yang kurang lebih sama besar dan memberikan nomor kelompok ke setiap baris.
Tipe hasil:
BIGINTDiperbarui: 16 Mei 2026Syntax
SQL
NTILE(n) OVER ([PARTITION BY col] ORDER BY col)Parameter
nINTEGERwajib
Jumlah kelompok yang diinginkan
ORDER BYclausewajib
Menentukan urutan pembagian kelompok
PARTITION BYclauseopsional
Opsional. Membagi hasil menjadi partisi terpisah
Contoh Penggunaan
Membagi ke 4 Kelompok (Quartiles)
SQL
1 SELECT 2 name, 3 salary, 4 NTILE(4) OVER (ORDER BY salary) as quartile 5 FROM employees;
Membagi karyawan ke 4 kelompok berdasarkan gaji.
Hasil
| name | salary | quartile |
|---|---|---|
| Ani | 5000000 | 1 |
| Budi | 7000000 | 1 |
| Citra | 10000000 | 2 |
| Deni | 12000000 | 2 |
| ... 4 baris lainnya | ||
Membuat Deciles untuk Analisis
SQL
1 SELECT 2 customer_id, 3 total_spending, 4 NTILE(10) OVER (ORDER BY total_spending DESC) as spending_decile 5 FROM customer_spending;
Membagi customer ke 10 kelompok berdasarkan spending.
Quartiles per Kategori
SQL
1 SELECT 2 category, 3 product_name, 4 price, 5 NTILE(4) OVER (PARTITION BY category ORDER BY price) as price_quartile 6 FROM products;
Membuat quartiles harga untuk setiap kategori produk.
Identifikasi Top 10%
SQL
1 SELECT * 2 FROM ( 3 SELECT 4 *, 5 NTILE(10) OVER (ORDER BY score DESC) as decile 6 FROM students 7 ) sub 8 WHERE decile = 1;
Mengambil 10% siswa dengan score tertinggi.
Pertanyaan Umum tentang NTILE
Apa itu fungsi NTILE di DuckDB?
Membagi baris menjadi n kelompok (buckets) yang kurang lebih sama besar dan memberikan nomor kelompok ke setiap baris. Di DuckDB, fungsi NTILE termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan NTILE di DuckDB?
Gunakan sintaks berikut: NTILE(n) OVER ([PARTITION BY col] ORDER BY col). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi NTILE?
Fungsi NTILE mengembalikan nilai bertipe BIGINT. Pastikan tipe data hasil sudah sesuai dengan kebutuhan query atau formula kamu. Jika input mengandung nilai NULL, perilaku fungsi dapat berbeda — selalu periksa dokumentasi untuk memastikan hasilnya sesuai ekspektasi.
Apa saja parameter fungsi NTILE?
Fungsi ini memiliki 2 parameter wajib dan 1 parameter opsional. Parameter yang digunakan: n (INTEGER, wajib): Jumlah kelompok yang diinginkan; PARTITION BY (clause, opsional): Opsional. Membagi hasil menjadi partisi terpisah; ORDER BY (clause, wajib): Menentukan urutan pembagian kelompok.