Seskupení a překódování hodnot
Tabulka evanston311.category obsahuje téměř 150 různých hodnot. Některé kategorie jsou si ale podobné a mají formát „Hlavní kategorie - Podrobnosti". Pokud agregujeme podle hlavní kategorie, získáme lepší přehled o tom, jaké požadavky jsou nejčastější.
Vytvoř dočasnou tabulku recode, která mapuje jednotlivé hodnoty sloupce category na nové, standardized hodnoty. Jako standardized hodnotu použij část názvu kategorie před pomlčkou ('-'). Tuto část extrahuj pomocí funkce split_part():
split_part(string text, delimiter text, field int)
Několik případů, které do tohoto vzoru nezapadají, bude potřeba dočistit ručně.
Poté připoj tabulku evanston311 k tabulce recode a seskup požadavky podle nových standardized hodnot kategorie.
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.
-- Fill in the command below with the name of the temp table
DROP TABLE IF EXISTS ___;
-- Create and name the temporary table
CREATE ___ ___ ___ AS
-- Write the select query to generate the table with distinct values of category and standardized values
SELECT DISTINCT category,
___(___(___, ___, ___)) AS standardized
-- What table are you selecting the above values from?
FROM ___;
-- Look at a few values before the next step
SELECT DISTINCT standardized
FROM recode
WHERE standardized LIKE 'Trash%Cart'
OR standardized LIKE 'Snow%Removal%';