IniziaInizia gratis

Subquery vs. CTE

Hai imparato diversi modi di scrivere le query e come queste scelte influenzano le prestazioni. In questo esercizio tornerai a esaminare i dati demografici dei paesi africani con atleti che partecipano alle Olimpiadi, concentrandoti sulle Olimpiadi estive.

Usando query già scritte, ristrutturerai le query e valuterai l’impatto delle modifiche. Inizierai osservando la differenza nei piani di esecuzione quando usi subquery rispetto alle common table expression (CTE).

Esegui il piano di esecuzione per ogni passaggio.

Questo esercizio fa parte del corso

Migliorare le prestazioni delle query in PostgreSQL

Visualizza il corso

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

-- Subquery
___ ___
SELECT city
, sex
, COUNT(DISTINCT athlete_id) as no_athletes
, AVG(age) as avg_age
FROM athletes_summ
WHERE country_code IN (SELECT olympic_cc FROM demographics WHERE gdp > 10000 and year = 2016)
AND year = 2016
GROUP BY city, sex;
Modifica ed esegui il codice