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

VŠECHNY poddotazy VŠUDE

Ve fotbalových ligách se zápasy hrají v různých fázích. Vítězné týmy postupují z jedné fáze do další, dokud nedosáhnou finálové fáze. S každou další fází stoupá i to, co je v sázce. Tabulka match obsahuje údaje o tom, ve které fázi se každý zápas odehrál.

V následujících 3 cvičeních sestavíš jeden dotaz s poddotazem v klauzulích SELECT, FROM i WHERE. Mění se průměrný počet vstřelených gólů s tím, jak s postupem do další fáze stoupá i to, co je v sázce?

Dotaz obsahuje opakovaně stejný poddotaz, díky čemuž si vyzkoušíš každé jeho umístění. Každá kopie znovu čte tabulku match, ale ve vlastní praxi by se celkový průměr počítal jen jednou – přesně jak to ukazuje kapitola 4 pomocí okenní funkce.

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

Manipulace s daty v SQL

Zobrazit kurz

Pokyny k cvičení

  • V poddotazu v klauzuli SELECT získej průměrný celkový počet gólů.
  • V hlavním dotazu spočítej průměrný celkový počet gólů pro konkrétní stage.
  • Vyfiltruj oba poddotazy i hlavní dotaz tak, aby obsahovaly pouze data ze sezóny 2012/2013.
  • Seskup dotaz pomocí GROUP podle sloupce m.stage.

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 the stage and average goals for each stage
	m.stage,
    ROUND(___(___ + m.away_goal),2) AS avg_goals,
    -- Select the average overall goals for the 2012/2013 season
    ROUND((SELECT ___(___ + away_goal) 
           FROM match 
           WHERE season = ___),2) AS overall
FROM match AS m
-- Filter for the 2012/2013 season
WHERE ___ = ___
-- Group by stage
GROUP BY ___;
Upravit a spustit kód