Ryzykowne zachowanie parkingowe
Tabela parking_violation zawiera wiele szczegółów dotyczących naruszeń przepisów parkingowych. Nie jest jednak jasne, co skłania kierowców do łamania tych przepisów. Jedna z hipotez zakłada, że kierowcy próbują parkować w zabronionych miejscach tuż przed zakończeniem obowiązywania ograniczeń. Otrzymujesz zadanie zbadania tego zjawiska. Na początek musisz poradzić sobie z faktem, że godziny w tabeli parking_violation są zapisane jako ciągi znaków.
W tym ćwiczeniu przekonwertujesz kolumny violation_time oraz to_hours_in_effect na wartości TIMESTAMP dla naruszeń, które miały miejsce w lokalizacjach z ograniczeniami obowiązującymi przez część doby, obliczysz interwał między violation_time a to_hours_in_effect dla tych rekordów, a następnie zidentyfikujesz rekordy, w których violation_time wypada mniej niż 1 godzinę przed to_hours_in_effect.
To ćwiczenie jest częścią kursu
Czyszczenie danych w bazach PostgreSQL
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
SELECT
summons_number,
-- Convert violation_time to a TIMESTAMP
___(___, 'HH12MIPM')::TIME as violation_time,
-- Convert to_hours_in_effect to a TIMESTAMP
___(___, 'HH12MIPM')::TIME as to_hours_in_effect
FROM
parking_violation
WHERE
-- Exclude all day parking restrictions
NOT (___ = '1200AM' AND ___ = '1159PM');