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

Hoàn tất phân tích gian lận

Cho đến giờ, chúng ta đã tách dữ liệu day spa thành một dòng các lần vào và ra, rồi sắp xếp dòng này theo thứ tự thời gian. Dòng dữ liệu này có hai trường quan trọng: StartOrdinalStartOrEndOrdinal. StartOrdinal là thứ tự thời gian của tất cả các lần vào. StartOrEndOrdinal chứa cả các lần vào và ra theo thứ tự. Với hai thông tin này, bạn có thể tìm được số lượt ghé thăm đồng thời tối đa.

Kết quả từ bài tập trước hiện đã có trong bảng tạm tên là #StartStopOrder.

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

Phân tích chuỗi thời gian trong SQL Server

Xem khóa học

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
	s.CustomerID,
	MAX(2 * s.StartOrdinal - s.StartOrEndOrdinal) AS MaxConcurrentCustomerVisits
FROM #StartStopOrder s
WHERE s.EntryCount = 1
GROUP BY s.CustomerID
-- The difference between 2 * start ordinal and the start/end
-- ordinal represents the number of concurrent visits
HAVING MAX(2 * s.___ - s.___) > 2
-- Sort by the largest number of max concurrent customer visits
ORDER BY ___ ___;
Chỉnh sửa và Chạy Mã