Fungsi ROW_NUMBER
Termasuk bagian Dasar-Dasar dalam perjalanan SQL di Coddy. Pelajaran 57 dari 72.
Fungsi window melakukan perhitungan pada sekumpulan baris tabel yang terkait dengan baris saat ini. Tidak seperti fungsi agregat biasa, fungsi window tidak menggabungkan hasilnya menjadi satu baris.
Fungsi ini sangat berguna saat kamu perlu:
- Menghitung total berjalan
- Mengurutkan item dalam kelompok
- Membandingkan baris saat ini dengan baris sebelumnya atau berikutnya
- Menganalisis tren selama periode waktu tertentu
Berikut beberapa contoh nyata penggunaan window function:
- Analisis Penjualan
- Hitung total penjualan kumulatif hingga setiap tahun (1995, 1997, 1999)
- Temukan produk terlaris untuk setiap kuartal
- Statistik Olahraga
- Lacak jumlah medali Olimpiade dari tahun ke tahun
- Identifikasi atlet terkemuka pada setiap periode kompetisi (2000, 2004, 2008)
ROW_NUMBER() adalah salah satu fungsi window paling sederhana. Fungsi ini memberikan nomor berurutan yang unik untuk setiap baris dalam set hasil. Berikut cara menggunakannya:
SELECT column1, column2,
ROW_NUMBER() OVER ([PARTITION BY column] [ORDER BY column]) as row_num
FROM table_name;Wajib menggunakan klausa OVER dengan ROW_NUMBER() : ROW_NUMBER() OVER ()
Contohnya:
SELECT product_name, sale_date,
ROW_NUMBER() OVER () as row_num
FROM sales;Ini menambahkan kolom row_num yang menghitung dari 1 hingga jumlah total baris.
Catatan: Klausa OVER dapat berisi instruksi pengurutan dan pemartisian untuk mengatur cara penomoran bekerja.
Tantangan
MudahTabel dan kolom yang tersedia:
liquids:id,density
Ambil semua cairan dengan kepadatan lebih dari 5.677.
Beri nomor pada hasil (gunakan fungsi ROW_NUMBER()) dan beri nama kolom ini row_num
Coba sendiri
-- Nomori setiap baris hasil yang telah difilter menggunakan fungsi jendela
SELECT id, density, ____ as row_num
FROM liquids
WHERE density > ____Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Kata Kunci Lainnya
Kata kunci INKata kunci BETWEENKata kunci LIKEKata kunci ASRangkuman: Model Ponsel2Kondisi
Dasar KondisiKata Kunci ANDKata Kunci ORKata Kunci NOTMenggabungkan Beberapa KondisiTanda KurungNilai Boolean8Statistik
Fungsi Agregat Bawaan Bagian 1Fungsi Agregat Bawaan Bagian 2Pengelompokan Bagian 1Pengelompokan Bagian 2Subkueri Bagian 1Subkueri Bagian 2Rangkuman, Toko Total GainRangkuman, Toko SkuterRangkuman, Toko Kopi11Fungsi Jendela bagian 1
Fungsi ROW_NUMBERKriteria ORDER BYKriteria PARTITION BYPARTITION & ORDERFungsi LEAD & LAGRekap: LEAD & LAGRekap: GambarRekap: Kotak3Format Pengembalian Khusus
Nilai nullUrutkan Hasil Bagian 1Urutkan Hasil Bagian 2Ulasan: Perusahaan Keamanan SiberBatasi Jumlah RecordUlasan: Pabrik Kendaraan6Tantangan Pengantar
Ulasan: Pemilihan ParlemenUlasan: Polisi Menangkap Pelaku KejahatanUlasan: Wadah Minuman BarUlasan: Insinyur Membuat Kolom BaruLatihan sendiri: Playground SQL