НачатьНачать бесплатно

Фильтрация по температуре ниже нуля с помощью подзапроса

С первых Олимпийских игр 1904 года и вплоть до Игр 2016 года африканские страны направили на соревнования 7 845 атлетов. Однако лишь 55 из них участвовали в зимних Олимпийских играх.

Четверть территории Африки занята Сахарой, а в остальных регионах круглый год стоит жара. Возможно, именно отсутствие холодного климата и снега ограничивает возможности для тренировок зимних олимпийцев.

В этом упражнении вы изучите климатические данные, чтобы понять, действительно ли все африканские страны лишены условий для зимних видов спорта. Всемирный банк собирает данные о средних температурах и уровне осадков по каждой стране. Среднемесячные и среднегодовые значения за 40 лет уже загружены: температура указана в градусах Цельсия (0 — точка замерзания), осадки — в миллиметрах.

Проанализируйте климатические данные и найдите страны, где температура остаётся ниже нуля круглый год. Есть ли среди них африканские?

Это упражнение является частью курса

Оптимизация запросов в PostgreSQL

Посмотреть курс

Инструкции к упражнению

  • Отфильтруйте данные, оставив только атлетов, участвовавших в зимних Олимпийских играх, — используйте столбец season.
  • С помощью подзапроса выберите из таблицы oclimate только те страны, где среднегодовая температура (temp_annual) ниже нуля (0 градусов).
    • Выберите коды стран olympic_cc из таблицы oclimate, чтобы отфильтровать значения country_code в таблице athletes_recent.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- Countries cold enough for snow year-round
SELECT country_code
  , country
  , COUNT (DISTINCT athlete_id) AS winter_athletes -- Athletes can compete in multiple events 
FROM athletes
WHERE country_code IN (___ ___ ___ ___ WHERE temp_annual < 0)
AND ___ = 'Winter'
GROUP BY country_code, country;
Редактировать и запускать код