COUNT s použitím CASE WHEN
Liší se počet fotbalových zápasů odehraných v jednotlivých evropských zemích podle sezony? Odpověď najdeme v Evropské fotbalové databázi.
Prozkoumáš počet zápasů odehraných ve 3 sezonách pro každou zemi uvedenou v databázi. Snáze to zvládneš tak, že zápasy každé sezony zobrazíš v samostatných sloupcích. Pomocí tabulky country a nefiltrované tabulky match spočítáš počet zápasů odehraných v každé zemi během sezon 2012/2013 a 2013/2014.
Toto cvičení je součástí kurzu
Manipulace s daty v SQL
Pokyny k cvičení
- Vytvoř příkaz
CASE WHEN, který spočítá zápasy odehrané v sezoně'2012/2013'. - Vytvoř příkaz
CASE WHEN, který spočítá zápasy odehrané v sezoně'2013/2014', a přiřaď mu aliasmatches_2013_2014.
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
c.name AS country,
-- Count matches in 2012/2013
___(___ ___ m.season = '___' ___ m.id END) AS matches_2012_2013,
-- Count matches in 2013/2014
___(___ ___ m.season = '___' ___ m.id ___) ___ ___
FROM country AS c
LEFT JOIN match AS m
ON c.id = m.country_id
GROUP BY country;