Window function (hàm cửa sổ) thực hiện các phép tính trên một tập dòng (một "cửa sổ") liên quan đến dòng hiện tại, mà không gộp chúng thành một dòng kết quả duy nhất (khác với hàm tổng hợp dùng GROUP BY). Chúng cho phép phân tích mạnh mẽ — tổng lũy kế, xếp hạng, so sánh với các dòng khác — trong khi vẫn giữ mỗi dòng trong kết quả.
Khác biệt then chốt với GROUP BY
GROUP BY → gộp mỗi nhóm thành MỘT dòng (bạn mất các dòng riêng lẻ)
Window function → tính trên các dòng liên quan nhưng GIỮ mọi dòng
→ Bạn có cả chi tiết theo từng dòng VÀ thông tin tổng hợp/xếp hạng cùng nhau.
