Window funkcije izvršavaju izračune na skupu redaka ("prozor") vezanih uz trenutni redak, bez njihova sažimanja u jedan izlazni redak (za razliku od agregatnih funkcija s GROUP BY). Omogućavaju moćnu analitiku — pokretne zbrojeve, rangiranja, usporedbe s ostalim redacima — uz zadržavanje svakog reda u rezultatu.
Ključna razlika od GROUP BY
GROUP BY → collapses groups into ONE row each (you lose individual rows)
Window function → computes across related rows but KEEPS every row
→ You get per-row detail AND aggregate/ranking info together.
