Bắt đầu ngayBắt đầu miễn phí

Truy cập giá trị từ hàng kế tiếp

Với hàm LEAD(), bạn có thể truy cập dữ liệu từ hàng tiếp theo trong cùng truy vấn mà không cần dùng câu lệnh GROUP BY. Cách này giúp bạn dễ dàng so sánh các giá trị trong một danh sách đã sắp xếp.

Cú pháp: LEAD(numeric_expression) OVER ([PARTITION BY column] ORDER BY column)

Trong bài tập này, bạn sẽ làm quen với việc so sánh giá trị của hàng hiện tại với hàng liền sau.

Bạn sẽ chọn thông tin về các cử tri từ France và sắp xếp kết quả theo tổng số phiếu bầu tăng dần. Mục tiêu là phân tích xem số phiếu của mỗi cử tri so với số phiếu của người kế tiếp trong danh sách như thế nào.

Bài tập này là một phần của khóa học

Các hàm thao tác dữ liệu trong SQL Server

Xem khóa học

Hướng dẫn bài tập

  • Tạo một cột mới hiển thị số phiếu bầu của người kế tiếp trong danh sách.
  • Tạo một cột mới là hiệu giữa total_votes của cử tri hiện tại và số phiếu của người kế tiếp.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

SELECT 
	first_name,
	last_name,
	total_votes AS votes,
    -- Select the number of votes of the next voter
	___(___) OVER (___ total_votes) AS votes_next_voter,
    -- Calculate the difference between the number of votes
	LEAD(___) ___ (ORDER BY ___) - total_votes AS votes_diff
FROM voters
WHERE country = 'France'
ORDER BY total_votes;
Chỉnh sửa và Chạy Mã