Parkverstöße nach Tageszeit klassifizieren
Es gab Bedenken, dass Parkverstöße nicht einheitlich über den Tag hinweg ausgestellt werden. Du sollst Parkverstöße der Tageszeit der Ausstellung zuordnen. Du entscheidest, dass der einfachste Ansatz ist, eine neue Spalte namens morning zu erstellen. Dieses Feld wird mit (der Ganzzahl) 1 gefüllt, wenn der Verstoß morgens (zwischen 12:00 AM und 11:59 AM) ausgestellt wurde, und (der Ganzzahl) 0 andernfalls. Die Ausstellungszeit ist in der Spalte violation_time der Tabelle parking_violation gespeichert. Diese Spalte besteht aus 4 Ziffern, gefolgt von einem A (für AM) oder P (für PM).
In dieser Übung füllst du die Spalte morning, indem du Muster für violation_time-Werte erkennst, die am Morgen auftreten.
Diese Übung ist Teil des Kurses
Datenbereinigung in PostgreSQL-Datenbanken
Anleitung zur Übung
- Verwende im Subquery das reguläre Ausdrucksmuster
'\d\d\d\dA', umviolation_time-Werte zu treffen, die aus 4 aufeinanderfolgenden Ziffern (\d) gefolgt von einem großenAbestehen. - Bearbeite die
CASE-Klausel, um die Spaltemorningmit1(Ganzzahl ohne Anführungszeichen) zu füllen, wenn der reguläre Ausdruck passt. - Bearbeite die
CASE-Klausel, um die Spaltemorningmit0(Ganzzahl ohne Anführungszeichen) zu füllen, wenn der reguläre Ausdruck nicht passt.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
SELECT
summons_number,
CASE WHEN
summons_number IN (
SELECT
summons_number
FROM
parking_violation
WHERE
-- Match violation_time for morning values
___ SIMILAR TO ___
)
-- Value when pattern matched
THEN ___
-- Value when pattern not matched
ELSE ___
END AS morning
FROM
parking_violation;