Waar de winter wit is
Canada, Rusland en Mongolië zijn de enige landen met Olympiërs én een gemiddelde jaartemperatuur onder het vriespunt. Vaker komt kou alleen in de wintermaanden voor. Landen met maar een paar maanden vorst en sneeuw bieden atleten nog steeds de kans om te trainen voor onderdelen als skiën en bobsleeën.
Met dit in gedachten bekijk je klimaatgegevens voor landen met Olympische atleten aan de hand van het 40-jarig gemiddelde van de maandtemperaturen. Je bent gefascineerd door de lage deelname aan de Winterspelen in Afrika en besluit de temperatuur te bekijken voor alle Olympische regio’s op het zuidelijk halfrond.
Schrijf de query zo leesbaar mogelijk door een common table expression (CTE) te gebruiken.
Deze oefening maakt deel uit van de cursus
Queryprestaties verbeteren in PostgreSQL
Oefeninstructies
- Schrijf een CTE,
south_cte, voor het zuidelijk halfrond. - Zoek de gemiddelde temperatuur en neerslag in juni uit de tabel
oclimate. - Join de resultaten om de gemiddelde wintermaandtemperatuur voor alle regio’s te bekijken.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
___ ___ ___ -- CTE
(
SELECT region
, ROUND(AVG(temp_06),2) AS avg_winter_temp
, ROUND(AVG(precip_06),2) AS avg_winter_precip
FROM ___
WHERE region IN ('Africa','South America','Australia and Oceania')
GROUP BY region
)
SELECT south.region, south.avg_winter_temp, south.avg_winter_precip
, COUNT(DISTINCT ath.athlete_id)
FROM ___ as south
INNER JOIN athletes_recent ath
ON south.region = ath.region
AND ath.season = 'Winter'
GROUP BY south.region, south.avg_winter_temp, south.avg_winter_precip
ORDER BY south.avg_winter_temp;