Zacznij terazZacznij za darmo

Filtrowanie do temperatur poniżej zera za pomocą podzapytania

Od pierwszych igrzysk olimpijskich w 1904 roku aż do igrzysk w 2016 roku afrykańskie kraje wysłały łącznie 7 845 sportowców. Jednak tylko 55 z nich wystartowało w Zimowych Igrzyskach Olimpijskich.

Ćwierć powierzchni Afryki pokrywa Sahara, a pozostałe obszary charakteryzują się całorocznym upałem. Być może właśnie ten brak zimna i śniegu ogranicza możliwości treningowe zimowych olimpijczyków.

W tym ćwiczeniu przeanalizujesz dane klimatyczne, żeby sprawdzić, czy wszystkie afrykańskie kraje mają warunki uniemożliwiające uprawianie sportów zimowych. Bank Światowy zbiera dane o średnich temperaturach i opadach dla poszczególnych krajów. Załadowane wstępnie dane zawierają miesięczne i roczne średnie z 40 lat – temperatura podana jest w stopniach Celsjusza (0 oznacza temperaturę zamarzania), a opady w milimetrach.

Przejrzyj dane klimatyczne i poszukaj krajów, w których temperatura przez cały rok utrzymuje się poniżej zera. Czy są wśród nich jakieś kraje afrykańskie?

To ćwiczenie jest częścią kursu

Optymalizacja wydajności zapytań w PostgreSQL

Zobacz kurs

Instrukcje do ćwiczenia

  • Ogranicz wyniki do sportowców uczestniczących wyłącznie w Zimowych Igrzyskach Olimpijskich, korzystając z kolumny season.
  • Użyj podzapytania, aby wybrać z tabeli oclimate tylko te kraje, których średnia roczna temperatura (temp_annual) jest poniżej zera (0 stopni).
    • Wybierz kody krajów olympic_cc z tabeli oclimate, aby przefiltrować kolumnę country_code z tabeli athletes_recent.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

-- 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;
Edytuj i uruchom kod