Maak de fraudeanalyse af
Tot nu toe hebben we de dagspa-gegevens uitgesplitst in een stroom van binnenkomsten en vertrekken en deze stroom chronologisch geordend. Deze stroom bevat twee cruciale velden: StartOrdinal en StartOrEndOrdinal. StartOrdinal is de chronologische volgorde van alle binnenkomsten. StartOrEndOrdinal bevat alle binnenkomsten en vertrekken in volgorde. Met deze twee stukjes informatie kunnen we het maximale aantal gelijktijdige bezoeken vinden.
De resultaten van de vorige oefening staan nu in een tijdelijke tabel genaamd #StartStopOrder.
Deze oefening maakt deel uit van de cursus
Tijdreeksanalyse in SQL Server
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
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 ___ ___;