Vytvoření tabulky s indikátorovými proměnnými
Zjisti, zda žádosti střední a vysoké priority v datech evanston311 s větší pravděpodobností obsahují kontaktní údaje žadatele: e-mailovou adresu nebo telefonní číslo.
- E-maily obsahují znak @.
- Telefonní čísla mají formát tří znaků, pomlčky, tří znaků, pomlčky a čtyř znaků. Například: 555-555-1212.
Pro vyhledávání těchto vzorů použij LIKE. Připomeňme, že % odpovídá libovolnému počtu znaků (i nule) a _ odpovídá právě jednomu znaku. Pokud vzor uzavřeš do % (tj. před i za vzorem), umožníš tím vyhledávání daného vzoru v rámci delšího textu.
Například '%___.com%' ti umožní vyhledat odkaz na webovou stránku s doménou nejvyšší úrovně '.com', před níž jsou alespoň tři znaky.
Vytvoř dočasnou tabulku, do které uložíš indikátorové proměnné pro e-mail a telefon. LIKE vrací hodnotu True nebo False, ale přetypování booleanu (True nebo False) na integer převede True na 1 a False na 0. Díky tomu bude hodnoty snazší později sumarizovat.
Toto cvičení je součástí kurzu
Průzkumná analýza dat v SQL
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
-- 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;