Data Analytics

SQL - Window Functions

ROW_NUMBER, RANK, DENSE_RANK, LAG, LEAD, NTILE, SUM OVER, PARTITION BY, frames

20 câu hỏi phỏng vấn·
Mid-Level
1

Window function trong SQL là gì?

Câu trả lời

Window function thực hiện phép tính trên một tập hợp các hàng liên quan đến hàng hiện tại mà không gộp kết quả thành một hàng đầu ra duy nhất. Khác với GROUP BY làm giảm số hàng, window function giữ lại tất cả các hàng trong kết quả đồng thời thêm một cột được tính toán. Mệnh đề OVER() xác định cửa sổ mà trên đó phép tính được thực hiện.

2

Mệnh đề nào là bắt buộc để định nghĩa một window function?

Câu trả lời

Mệnh đề OVER() là bắt buộc cho bất kỳ window function nào. Nó cho công cụ SQL biết rằng hàm phải được thực thi như một window function thay vì một hàm tổng hợp thông thường. OVER() có thể chứa PARTITION BY, ORDER BY và đặc tả frame, nhưng cũng có thể để trống để áp dụng phép tính trên toàn bộ tập kết quả.

3

Vai trò của PARTITION BY trong một window function là gì?

Câu trả lời

PARTITION BY chia tập hợp các hàng thành các nhóm độc lập (phân vùng), và window function được áp dụng riêng biệt cho mỗi phân vùng. Khác với GROUP BY, PARTITION BY không làm giảm số hàng trong kết quả. Ví dụ, SUM(sales) OVER(PARTITION BY region) tính tổng doanh số mỗi khu vực trong khi vẫn giữ lại từng hàng riêng lẻ.

4

Sự khác biệt chính giữa GROUP BY và PARTITION BY là gì?

5

ROW_NUMBER() OVER(ORDER BY salary DESC) trả về gì?

+17 câu hỏi phỏng vấn

Nắm vững Data Analytics cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí