První kroky s korelovanými poddotazy
Korelované poddotazy jsou poddotazy, které odkazují na jeden nebo více sloupců z hlavního dotazu. Závisí na informacích z hlavního dotazu, takže je nelze spustit samostatně.
SQL vyhodnocuje korelované poddotazy pro každý řádek načtených dat zvlášť – tento proces vyžaduje výrazně více výpočetního výkonu a času než jednoduchý poddotaz.
V tomto cvičení si procvičíš použití korelovaných poddotazů k vyhledání zápasů s výsledky, které jsou pro danou zemi extrémními odlehlými hodnotami – konkrétně těch, kde bylo skóre více než 3× vyšší než průměr!
Toto cvičení je součástí kurzu
Manipulace s daty v SQL
Pokyny k cvičení
- Začni poddotaz v klauzuli
WHEREvýpočtem průměru vstřelených branek doma i venku. - Doplň odkazy na sloupce v poddotazu tak, aby se
country_idshodovalo v tabulkáchmainisub.
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
main.country_id,
main.date,
main.home_goal,
main.away_goal
FROM match AS main
WHERE
-- Filter the main query by the subquery
(home_goal + away_goal) >
(SELECT AVG((___ + sub.away_goal) * 3)
FROM match AS sub
-- Join the main query to the subquery with country_id in WHERE
WHERE main.___ = sub.___);