Группировка и перекодирование значений
В таблице evanston311.category почти 150 различных значений. Некоторые из них похожи и имеют вид «Основная категория - Детали». Чтобы лучше понять, какие запросы встречаются чаще всего, удобно агрегировать данные по основной категории.
Для этого создайте временную таблицу recode, которая сопоставляет уникальные значения category с новыми, standardized (стандартизированными) значениями. В качестве стандартизированного значения используйте часть категории, стоящую до тире ('-'). Извлечь её можно с помощью функции split_part():
split_part(string text, delimiter text, field int)
Потребуется также дополнительная очистка нескольких значений, которые не вписываются в этот шаблон.
После этого таблицу evanston311 можно соединить с recode, чтобы сгруппировать запросы по новым стандартизированным значениям категорий.
Это упражнение является частью курса
Разведочный анализ данных в SQL
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
-- 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%';