Costruire sulle sottoquery in FROM
Nell'esercizio precedente hai scoperto che Inghilterra, Paesi Bassi, Germania e Spagna erano gli unici paesi ad aver partite nel database in cui sono stati segnati 10 o più gol in totale. Ora troviamo qualche dettaglio in più su quelle partite: quando sono state giocate, in quali stagioni e quanti gol sono stati segnati in casa rispetto a quelli in trasferta.
Noterai che in questo esercizio l'alias di tabella è omesso per ogni colonna selezionata nella query principale. Questo perché la query principale estrae dati dalla sottoquery, che viene trattata come una singola tabella.
Questo esercizio fa parte del corso
Manipolazione dei dati in SQL
Istruzioni dell'esercizio
- Completa la sottoquery all'interno della clausola
FROM. Seleziona ilnamedel paese dalla tabellacountry, insieme alle colonnedate,home_goal,away_goaletotal_goalsdalla tabellamatch. - Crea una colonna nella sottoquery che somma i gol in casa e in trasferta, chiamata
total_goals. Verrà usata per filtrare la query principale. - Seleziona
country,date,home_goaleaway_goalnella query principale. - Filtra la query principale per le partite con 10 o più gol totali.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
SELECT
-- Select country, date, home, and away goals from the subquery
___,
date,
___,
away_goal
FROM
-- Select country name, date, home_goal, away_goal, and total goals in the subquery
(SELECT ___ AS country,
m.date,
___,
m.away_goal,
(___ + m.away_goal) AS total_goals
FROM match AS m
LEFT JOIN country AS c
ON m.country_id = c.id) AS subq
-- Filter by total goals scored in the main query
WHERE total_goals ___ ___;