Začněte nyníZačněte zdarma

Poddotazy v FROM – jdeme dál

V předchozím cvičení jsi zjistil/a, že Anglie, Nizozemsko, Německo a Španělsko jsou jediné země, ve kterých se v databázi odehrály zápasy s 10 nebo více vstřelenými góly celkem. Teď se podíváme na podrobnosti těchto zápasů – kdy se hrály, v jakých sezonách a kolik gólů padlo doma a kolik venku.

Všimni si, že v tomto cvičení není u žádného vybraného sloupce v hlavním dotazu uveden alias tabulky. Je to proto, že hlavní dotaz čerpá data z poddotazu, který se chová jako jediná tabulka.

Toto cvičení je součástí kurzu

Manipulace s daty v SQL

Zobrazit kurz

Pokyny k cvičení

  • Dokonči poddotaz uvnitř klauzule FROM. Vyber sloupec name ze tabulky country a sloupce date, home_goal, away_goal a total_goals z tabulky match.
  • Vytvoř v poddotazu sloupec, který sečte domácí a venkovní góly – pojmenuj ho total_goals. Tento sloupec se použije k filtrování hlavního dotazu.
  • V hlavním dotazu vyber sloupce country, date, home_goal a away_goal.
  • Filtruj hlavní dotaz tak, aby zahrnoval pouze zápasy s 10 nebo více góly celkem.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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 ___ ___;
Upravit a spustit kód