시작하기무료로 시작하기

사기 분석 마무리하기

지금까지 데이스파 데이터를 입장과 퇴장 스트림으로 분리하고, 이 스트림을 시간순으로 정렬했어요. 이 스트림에는 StartOrdinalStartOrEndOrdinal이라는 두 가지 핵심 필드가 있습니다. StartOrdinal은 모든 입장의 시간순 정렬을, StartOrEndOrdinal은 모든 입장과 퇴장을 순서대로 담고 있어요. 이 두 정보를 활용하면 동시에 방문 중인 최대 인원수를 구할 수 있습니다.

이전 연습 문제의 결과는 이제 임시 테이블 #StartStopOrder에 들어 있습니다.

이 연습은 강의의 일부입니다

SQL Server에서의 시계열 분석

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

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 ___ ___;
코드 편집 및 실행