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
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
oclimatetylko te kraje, których średnia roczna temperatura (temp_annual) jest poniżej zera (0 stopni).- Wybierz kody krajów
olympic_ccz tabelioclimate, aby przefiltrować kolumnęcountry_codez tabeliathletes_recent.
- Wybierz kody krajów
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;