Bỏ qua tới nội dung chính
Quay lại tin tức

40 hàm cửa sổ SQL nâng cao mọi nhà khoa học dữ liệu cần biết (kèm ví dụ)

Analytics Vidhya· Harshit Ahluwalia· 18/5/2026general

Trong lĩnh vực khoa học dữ liệu, SQL vẫn là công cụ mạnh mẽ để định nghĩa dữ liệu, thao tác dữ liệu, tổng hợp dữ liệu và phân tích dữ liệu. Các lệnh SQL cơ bản rất nền tảng và ai cũng biết. Nếu muốn trở nên nổi bật, bạn nên nắm vững các tính năng nâng cao như hàm cửa sổ (window functions) mà [...] Bài viết 40 Advanced SQL Window Functions Every Data Scientist Must Know (with examples) xuất hiện lần đầu trên Analytics Vidhya.

40 Hàm Cửa sổ SQL Nâng cao: Hướng dẫn đầy đủ Hội nghị AI mang tính tương lai nhất của Ấn Độ đã trở lại – Lớn hơn, Sắc nét hơn, Táo bạo hơn d : h : m : s Nhận thông tin chi tiết Các khóa học miễn phí Các khóa học miễn phí Lộ trình học tập Chương trình tăng tốc Chương trình tăng tốc Mới Chương trình GenAI Pinnacle GenAI Pinnacle Plus Người tiên phong AI tác nhân Mới DeepSeek Hội nghị thượng đỉnh DataHack 2025 DHS 2026 Các khóa học miễn phí Đăng nhập Chuyển chế độ Đăng xuất Chuẩn bị phỏng vấn Sự nghiệp GenAI Kỹ thuật nhắc lệnh ChatGPT LLM Langchain RAG AI Agents Học máy Học sâu Công cụ GenAI LLMOps Python NLP SQL Dự án AIML Danh sách đọc Lộ trình học tập của nhà phân tích dữ liệu Cách trở thành nhà phân tích dữ liệu vào năm 2025: Lộ trình hoàn chỉnh Lộ trình học tập Tableau Lộ trình học tập toàn diện về Tableau vào năm 2025 Lộ trình học tập NLP Lộ trình học tập NLP toàn diện 2025 Lộ trình học tập của nhà khoa học dữ liệu Lộ trình học tập để trở thành nhà khoa học dữ liệu vào năm 2025 Lộ trình học tập của kỹ sư dữ liệu Lộ trình từng bước để trở thành kỹ sư dữ liệu vào năm 2025 Lộ trình học tập MLOps Lộ trình học tập MLOps toàn diện: Phiên bản 2025 Lộ trình học tập của kỹ sư AI Lộ trình để trở thành kỹ sư AI vào năm 2025 Lộ trình học tập thị giác máy tính Lộ trình học tập toàn diện để thành thạo thị giác máy tính vào năm 2025 Lộ trình học tập AI tạo sinh Lộ trình tốt nhất để học AI tạo sinh vào năm 2025 Lộ trình AI tạo sinh cho doanh nghiệp Lộ trình GenAI cho doanh nghiệp Lộ trình LLM Các mô hình ngôn ngữ lớn được giải mã: Lộ trình dành cho người mới bắt đầu Lộ trình kỹ sư nhắc lệnh Lộ trình học tập để trở thành chuyên gia kỹ thuật nhắc lệnh Trang chủ SQL 40 Hàm cửa sổ SQL nâng cao mà mọi nhà khoa học dữ liệu phải biết (kèm ví dụ) 40 Hàm cửa sổ SQL nâng cao mà mọi nhà khoa học dữ liệu phải biết (kèm ví dụ) Harshit Ahluwalia Cập nhật lần cuối: 19/5/2026 13 phút đọc Trong thế giới khoa học dữ liệu, SQL vẫn là công cụ mạnh mẽ để định nghĩa dữ liệu, thao tác dữ liệu, tổng hợp dữ liệu và phân tích dữ liệu. Mặc dù các lệnh SQL cơ bản rất nền tảng và mọi người đều biết về chúng, nhưng nếu muốn trở nên độc đáo trong đám đông, bạn nên biết các tính năng nâng cao như hàm cửa sổ có thể mở khóa nhiều khả năng cho các phép biến đổi và hiểu biết sâu sắc về dữ liệu phức tạp. Trong bài viết này, bạn sẽ tìm hiểu về các hàm cửa sổ SQL nâng cao mà bạn nên biết và cách sử dụng chúng trong dự án của mình. Mục lục Sự khác biệt giữa hàm cửa sổ và hàm tổng hợp thông thường Mệnh đề OVER() kỳ diệu: Định nghĩa cửa sổ của bạn Hiểu về khung cửa sổ: ROWS so với RANGE so với GROUPS Các hàm xếp hạng và đánh số thiết yếu Các hàm điều hướng và vị trí Các hàm thống kê và hồi quy nâng cao Các hàm phân phối và xác suất Các hàm tổng hợp dưới dạng cửa sổ Các hàm phân tích chuyên biệt và dành riêng cho nền tảng Hiểu thứ tự thực thi của SQL: Khi nào các hàm cửa sổ chạy? Kết luận Các câu hỏi thường gặp Sự khác biệt giữa hàm cửa sổ và hàm tổng hợp thông thường Các hàm tổng hợp thông thường (SUM(), AVG(), COUNT() không có OVER()): Các hàm này tổng hợp các hàng thành một bản tóm tắt. Chúng nhận một nhóm các hàng và trả về một hàng tóm tắt duy nhất. Ví dụ: "SELECT SUM(sales) FROM orders" sẽ cung cấp tổng số lượng bán hàng. Các hàm cửa sổ (SUM(), AVG(), COUNT() với OVER()): Các hàm này cũng thực hiện tính toán trên nhóm các hàng, nhưng chúng trả về kết quả cho mỗi hàng trong dữ liệu gốc của bạn. Điều này có nghĩa là bạn có thể thấy tổng doanh số trong ngày bên cạnh từng giao dịch bán hàng riêng lẻ diễn ra trong ngày đó. Mệnh đề OVER() kỳ diệu: Xác định cửa sổ của bạn Mệnh đề OVER() là cốt lõi của mọi hàm cửa sổ. Nó cho SQL biết chính xác những hàng nào sẽ được đưa vào cửa sổ của bạn để tính toán. Bên trong OVER(), bạn có thể sử dụng một vài từ khóa quan trọng: PARTITION BY: Điều này giống như nói "Nhóm dữ liệu của tôi theo cột này". Ví dụ: PARTITION BY customer_id có nghĩa là hàm cửa sổ sẽ khởi động lại tính toán của nó cho mỗi khách hàng mới. ORDER BY: Điều này cho SQL biết cách sắp xếp các hàng trong mỗi nhóm (hoặc toàn bộ tập dữ liệu nếu không có PARTITION BY). Điều này cực kỳ quan trọng đối với các hàm quan tâm đến trình tự, như tìm mục đầu tiên hoặc mục tiếp theo. Hiểu về khung cửa sổ: ROWS so với RANGE so với GROUPS Khung cửa sổ chỉ định tập hợp con các hàng trong phân vùng hiện tại mà hàm cửa sổ sẽ hoạt động. Chúng được định nghĩa tương đối với hàng hiện tại và rất quan trọng cho các phép tính như trung bình động hoặc tổng tích lũy. ROWS: Định nghĩa khung dựa trên một số hàng cố định đứng trước hoặc đứng sau hàng hiện tại. Ví dụ: ROWS BETWEEN 2 PRECEDING AND CURRENT ROW bao gồm hàng hiện tại và hai hàng đứng trước. RANGE: Định nghĩa khung dựa trên một độ lệch logic từ giá trị của hàng hiện tại trong mệnh đề ORDER BY. Ví dụ: RANGE BETWEEN 100 PRECEDING AND CURRENT ROW sẽ bao gồm tất cả các hàng có giá trị ORDER BY nằm trong phạm vi 100 đơn vị so với giá trị của hàng hiện tại. GROUPS: (Ít phổ biến hơn, nhưng có sẵn trong một số phương ngữ SQL nâng cao như Oracle) Định nghĩa khung dựa trên một nhóm hàng logic, tương tự như RANGE nhưng thường được sử dụng với logic nhóm phức tạp hơn. Các hàm xếp hạng và đánh số thiết yếu Các hàm này rất tốt để sắp xếp dữ liệu của bạn và gán thứ hạng hoặc số trong các nhóm. Chúng giúp bạn nhanh chóng tìm thấy mục tốt nhất, tệ nhất hoặc đơn giản là đếm các mục trong một chuỗi. ROW_NUMBER(): Gán cho mỗi hàng một số duy nhất ROW_NUMBER() gán một số duy nhất, tuần tự (bắt đầu từ 1) cho mỗi hàng trong nhóm. Nó hoàn hảo khi bạn cần một

Nguồn tin: Analytics Vidhya — Tác giả: Harshit Ahluwalia. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.