Memberikan ranking ke setiap baris. Nilai yang sama mendapat ranking yang sama, dan ranking berikutnya di-skip sesuai jumlah duplikat.
BIGINTDiperbarui: 13 Jun 2026RANK() OVER ([PARTITION BY col] ORDER BY col)Menentukan urutan ranking
Opsional. Membagi hasil menjadi partisi untuk ranking terpisah
1 SELECT 2 name, 3 score, 4 RANK() OVER (ORDER BY score DESC) as rank 5 FROM students;
Memberikan ranking berdasarkan score. Nilai sama = ranking sama.
| name | score | rank |
|---|---|---|
| Ani | 95 | 1 |
| Budi | 95 | 1 |
| Citra | 90 | 3 |
| Deni | 85 | 4 |
1 SELECT 2 category, 3 product_name, 4 sales, 5 RANK() OVER (PARTITION BY category ORDER BY sales DESC) as sales_rank 6 FROM products;
Ranking produk berdasarkan penjualan dalam setiap kategori.
1 SELECT 2 name, 3 score, 4 ROW_NUMBER() OVER (ORDER BY score DESC) as row_num, 5 RANK() OVER (ORDER BY score DESC) as rank, 6 DENSE_RANK() OVER (ORDER BY score DESC) as dense_rank 7 FROM students;
Membandingkan ketiga fungsi ranking.
| name | score | row_num | rank | dense_rank |
|---|---|---|---|---|
| Ani | 95 | 1 | 1 | 1 |
| Budi | 95 | 2 | 1 | 1 |
| Citra | 90 | 3 | 3 | 2 |
| Deni | 85 | 4 | 4 | 3 |
Sudah paham RANK? Latih langsung di browser
Latihan interaktif, langsung di browser.