Lewati ke konten utama

F2 · Modul 07

Window function

47 langkah singkat, dari mudah sampai tantangan.

  1. Level 1

    Kenal

  2. Level 2

    Paham

  3. Level 3

    Terapkan

  4. Level 4

    Tantangan

  5. Level 5

    Pendalaman

Intinya

  • Window function (fungsi(…) OVER (…)) menghitung dari sekelompok baris lalu menempelkan hasilnya di setiap baris, tanpa meringkas.
  • PARTITION BY membagi jendela per kelompok; ORDER BY di dalam OVER menentukan urutan jendela, terpisah dari urutan hasil.
  • ROW_NUMBER/RANK/DENSE_RANK memberi peringkat; SUM(…) OVER (ORDER BY …) adalah total berjalan; LAG/LEAD mengambil baris sebelum/sesudah.
  • Window function tidak bisa dipakai di WHERE: hitung di CTE, saring di kueri luar (N teratas per kelompok).
  • Jaga ORDER BY di jendela tetap unik; bingkai bawaan RANGE memperlakukan nilai seri sebagai satu kelompok.

Sebelum mulai

±2–3 jam.

Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.

Hasil belajar: setelah modul ini kamu bisa menghitung nilai dari sekelompok baris tanpa meringkas barisnya dengan OVER(); membagi jendela dengan PARTITION BY dan mengurutkannya dengan ORDER BY; memberi peringkat dengan ROW_NUMBER, RANK, dan DENSE_RANK; menghitung total berjalan dan rata-rata bergerak dengan ROWS BETWEEN … PRECEDING; membandingkan dengan baris sebelumnya dan sesudahnya dengan LAG/LEAD; mengambil N teratas per kelompok; dan menghindari jebakan bingkai bawaan (RANGE) saat ada nilai seri.

Proyek: Laporan 6 (tren omzet harian), Laporan 7 (juara per kategori), dan Laporan 8 (metode bayar per minggu).

Istilah di modul ini (38)

Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course

Bahan modul

Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.

  • 30 contoh kode
  • 8 berkas latihan + tes
  • 1 berkas data
Lihat isi zip
  • BACA-DULU.txt
  • contoh_f2_07_35.sql
  • contoh_f2_07_63.sql
  • contoh_f2_07_84.sql
  • contoh_f2_07_128.sql
  • contoh_f2_07_148.sql
  • contoh_f2_07_175.sql
  • contoh_f2_07_223.sql
  • contoh_f2_07_321.sql
  • contoh_f2_07_341.sql
  • contoh_f2_07_393.sql
  • contoh_f2_07_436.sql
  • contoh_f2_07_457.sql
  • contoh_f2_07_482.sql
  • contoh_f2_07_580.sql
  • contoh_f2_07_724.sql
  • contoh_f2_07_813.sql
  • contoh_f2_07_835.sql
  • contoh_f2_07_888.sql
  • contoh_f2_07_942.sql
  • contoh_f2_07_986.sql
  • contoh_f2_07_1126.sql
  • contoh_f2_07_1190.sql
  • contoh_f2_07_1214.sql
  • contoh_f2_07_1251.sql
  • contoh_f2_07_1635.sql
  • contoh_f2_07_1686.sql
  • contoh_f2_07_1716.sql
  • contoh_f2_07_1763.sql
  • contoh_f2_07_1785.sql
  • contoh_f2_07_1850.sql
  • latihan_f2_07_1.sql
  • latihan_f2_07_4.sql
  • latihan_f2_07_2.sql
  • latihan_f2_07_3.sql
  • latihan_f2_07_8.sql
  • latihan_f2_07_5.sql
  • latihan_f2_07_6.sql
  • latihan_f2_07_7.sql
  • warung.sql