Eine Tabelle mit Indikatorvariablen erstellen
Finde heraus, ob Anfragen mit mittlerer und hoher Priorität in den Daten von evanston311
eher die Kontaktinformationen der Anfragenden enthalten: eine E-Mail-Adresse oder eine Telefonnummer.
- E-Mail-Adressen enthalten ein @.
- Telefonnummern haben das Muster aus drei Zeichen, Bindestrich, drei Zeichen, Bindestrich, vier Zeichen. Zum Beispiel: 555-555-1212.
Verwende LIKE
, um diese Muster zu finden. Denke daran, dass %
auf eine beliebige Anzahl von Zeichen passt (auch 0) und _
auf ein einzelnes Zeichen. Wenn du ein Muster in %
einschließt (d. h. vor und nach deinem Muster), kannst du es in anderem Text finden.
Mit '%___.com%'
könntest du zum Beispiel nach einem Verweis auf eine Website mit der Top-Level-Domain '.com'
und mindestens drei Zeichen davor suchen.
Erstelle und speichere Indikatorvariablen für E-Mail-Adresse und Telefon in einer temporären Tabelle. LIKE
liefert True oder False als Ergebnis, aber das Casting eines Booleans (True oder False) als integer
wandelt True in 1 und False in 0 um. So lassen sich die Werte später leichter zusammenfassen.
Diese Übung ist Teil des Kurses
Explorative Datenanalyse in SQL
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
-- To clear table if it already exists
DROP TABLE IF EXISTS indicators;
-- Create the indicators temp table
___ ___ ___ ___ AS
-- Select id
SELECT id,
-- Create the email indicator (find @)
CAST (description LIKE '___' AS integer) AS email,
-- Create the phone indicator
___ (___ ___ '___' AS integer) AS phone
-- What table contains the data?
FROM ___;
-- Inspect the contents of the new temp table
SELECT *
FROM indicators;