Aankomsttijd in minuten berekenen
Als data-gedreven developer moet je informatie soms toegankelijker maken voor gebruikers.
De tabel train_schedule bevat aankomsttijden en stationsnamen voor twee spoorlijnen. Dit is gebaseerd op data van een forenzenspoorlijn die tussen San Francisco en steden ten zuiden daarvan rijdt.
Je maakt deel uit van een team dat een app ontwikkelt om de dienstregeling handiger te maken voor forenzen. Een van de gevraagde functies is een optie om in één oogopslag te zien hoe lang het duurt om van de eerste halte op de lijn naar de volgende haltes te reizen.
Deze oefening maakt deel uit van de cursus
Tijdreeksanalyse in PostgreSQL
Oefeninstructies
- Haal in de common table expression de eerste
arrival_timeop voor elke spoorlijn, oftewel de aankomsttijd bij het eerste station op de lijn. - Gebruik
EXTRACT()om het relatieve verschil te berekenen tussen de aankomsttijd van elk station en die van het eerste station op de lijn, uitgedrukt in gehele minuten.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
-- Get first arrival time for each line
WITH start_times AS
(
SELECT train_id, ___ AS start_time
FROM train_schedule
___
)
SELECT
train_id,
station,
arrival_time,
-- Relative time difference from first station in minutes
(___(___ (___)))
___ AS total_minutes
FROM train_schedule JOIN start_times USING(train_id)
ORDER BY train_id, arrival_time;