Zacznij terazZacznij za darmo

Zmienność według dnia tygodnia

Czy czas potrzebny do realizacji zgłoszenia zależy od dnia tygodnia, w którym zostało ono utworzone?

Nazwę dnia tygodnia można uzyskać, konwertując znacznik czasu na dane tekstowe:

to_char(date_created, 'day') 

Nazwy dni tygodnia są jednak sortowane alfabetycznie, a nie chronologicznie. Aby posortować dni tygodnia w kolejności chronologicznej, przypisując każdemu z nich wartość całkowitą, możemy użyć:

EXTRACT(DOW FROM date_created)

DOW to skrót od „day of week" (dzień tygodnia).

To ćwiczenie jest częścią kursu

Eksploracyjna analiza danych w SQL

Zobacz kurs

Instrukcje do ćwiczenia

  • Wybierz nazwę dnia tygodnia, w którym utworzono zgłoszenie (date_created), jako day.
  • Wybierz średni czas między zakończeniem zgłoszenia (date_completed) a jego utworzeniem jako duration.
  • Pogrupuj wyniki według kolumny day (nazwy dnia tygodnia) oraz całkowitej wartości liczbowej dnia tygodnia (użyj odpowiedniej funkcji).
  • Posortuj wyniki według całkowitej wartości liczbowej dnia tygodnia, korzystając z tej samej funkcji co w GROUP BY.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

-- 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(___ ___ ___);
Edytuj i uruchom kod