Сканирование по индексу
Ваш друг живёт на Гавайях, где вулканический смог обостряет его астму. Вы помогаете ему выбрать новое место для жизни, используя данные Агентства по охране окружающей среды о качестве воздуха на уровне округов. Вы решили, что в новом месте хорошее качество воздуха должно сохраняться не менее 90% дней в году.
Вы знаете, что округов в США очень много, а таблица с данными о качестве воздуха большая. Первый запрос (не показан) выполнил последовательное сканирование и занял много времени.
Вы решаете добавить индекс для столбца, в котором отслеживается количество дней с хорошим качеством воздуха. Изучите план запроса и определите тип сканирования.
Это упражнение является частью курса
Оптимизация запросов в PostgreSQL
Инструкции к упражнению
- Создайте индекс для таблицы
annual_aqi, используя столбецgood. - Включите только те результаты, в которых качество воздуха считается хорошим не менее 90% дней в году.
- Сосредоточьтесь на последних годах, ограничив
aqi_yearзначениями 2017 и 2018.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
CREATE INDEX good_index
ON ___(___);
EXPLAIN
SELECT state_name, county_name, aqi_year, good
FROM annual_aqi
WHERE ___ > 327 -- 90% of the year
AND ___ IN (___,___);