Window Function (ROW_NUMBER & OVER PARTITION BY)

Window Function melakukan kalkulasi melintasi sekumpulan baris relasional tanpa menggabungkan baris data menjadi 1 baris seperti GROUP BY.

👀 Contoh dulu

SELECT name, salary, ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS rank FROM employees;

Hasilnya: name | salary | rank --------+--------+------ Budi | 15000 | 1 Siti | 12000 | 2

💡 OVER (PARTITION BY ...) membagi jendela komputasi per kelompok kategori.

📝 Sekarang giliranmu

Tulis query SELECT yang mengambil kolom 'id', 'amount', dan fungsi 'ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY created_at DESC)' dengan alias 'order_seq' dari tabel 'orders'.

Preview