Variatie per weekdag
Verschilt de tijd die nodig is om een verzoek af te ronden per weekdag waarop het verzoek is aangemaakt?
We kunnen de naam van de weekdag ophalen door een timestamp om te zetten naar tekens:
to_char(date_created, 'day')
Maar namen van weekdagen als tekst sorteren alfabetisch in plaats van chronologisch. Om de weekdagen in chronologische volgorde te krijgen met een geheel getal voor elke dag, kunnen we dit gebruiken:
EXTRACT(DOW FROM date_created)
DOW staat voor "day of week".
Deze oefening maakt deel uit van de cursus
Exploratory Data Analysis in SQL
Oefeninstructies
- Selecteer de naam van de weekdag waarop het verzoek is aangemaakt (
date_created) alsday. - Selecteer de gemiddelde tijd tussen het afronden van het verzoek (
date_completed) en het aanmaken van het verzoek alsduration. - Groepeer op
day(de naam van de weekdag) en de gehele waarde voor de weekdag (gebruik een functie). - Sorteer op de gehele waarde van de weekdag met dezelfde functie als in
GROUP BY.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
-- Select name of the day of the week the request was created
SELECT ___(___, ___) AS day,
-- Select avg time between request creation and completion
___(___ - ___) AS duration
FROM evanston311
-- Group by the name of the day of the week and
-- integer value of day of week the request was created
GROUP BY day, EXTRACT(___ ___ ___)
-- Order by integer value of the day of the week
-- the request was created
ORDER BY EXTRACT(___ ___ ___);