Window
MySQL
NTILE
Membagi baris menjadi n bucket dengan ukuran seimbang. Mengembalikan nomor bucket (1 sampai n).
Tipe hasil:
BIGINTDiperbarui: 16 Mei 2026Syntax
SQL
NTILE(n) OVER ([PARTITION BY col] ORDER BY col)Parameter
nintegerwajib
Jumlah bucket yang diinginkan
ORDER BYcolumn(s)wajib
Kolom untuk menentukan urutan pembagian
PARTITION BYcolumn(s)opsional
Kolom untuk membagi data menjadi grup (opsional)
Contoh Penggunaan
Kuartil
SQL
1 SELECT name, salary, 2 NTILE(4) OVER (ORDER BY salary) AS quartile 3 FROM employees;
Membagi karyawan ke 4 kuartil gaji.
Hasil
(employees in 4 quartiles)
Desil
SQL
1 SELECT product, revenue, 2 NTILE(10) OVER (ORDER BY revenue DESC) AS decile 3 FROM products;
Membagi produk ke 10 desil berdasarkan revenue.
Hasil
(products in 10 deciles)
Segmentasi Customer
SQL
1 SELECT customer_id, total_purchase, 2 CASE NTILE(3) OVER (ORDER BY total_purchase DESC) 3 WHEN 1 THEN 'High Value' 4 WHEN 2 THEN 'Medium Value' 5 WHEN 3 THEN 'Low Value' 6 END AS segment 7 FROM customers;
Segmentasi customer berdasarkan pembelian.
Hasil
(customers segmented by value)
Pertanyaan Umum tentang NTILE
Apa itu fungsi NTILE di MySQL?
Membagi baris menjadi n bucket dengan ukuran seimbang. Mengembalikan nomor bucket (1 sampai n). Di MySQL, fungsi NTILE termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan NTILE di MySQL?
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 bucket yang diinginkan; PARTITION BY (column(s), opsional): Kolom untuk membagi data menjadi grup (opsional); ORDER BY (column(s), wajib): Kolom untuk menentukan urutan pembagian.