Базовые операторы CASE
Какая команда ваша любимая?
База данных European Soccer Database содержит данные о 12 800 матчах из 11 стран, сыгранных в период с 2011 по 2015 год! На протяжении всего курса вы будете работать с отфильтрованными версиями таблиц из этой базы данных, чтобы лучше изучить их содержимое.
В этом упражнении вам нужно определить матчи, сыгранные между FC Schalke 04 и FC Bayern Munich. В каждом матче указаны две команды: их идентификаторы хранятся в столбцах hometeam_id и awayteam_id таблицы matches_germany. Эти идентификаторы можно сопоставить со столбцом team_api_id в таблице teams_germany, однако выполнить объединение сразу по обоим столбцам не получится.
Тем не менее эту задачу можно решить с помощью оператора CASE — после того как вы определите значение team_api_id для каждой из команд!
Это упражнение является частью курса
Манипуляции с данными в SQL
Инструкции к упражнению
- Создайте оператор
CASE, который определяет, является ли домашней командой в матче в ГерманииFC Bayern Munich,FC Schalke 04илиOther.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
-- Identify the home team as Bayern Munich, Schalke 04, or Other
SELECT
___ ___ hometeam_id = 10189 ___ 'FC Schalke 04'
___ hometeam_id = 9823 ___ 'FC Bayern Munich'
ELSE 'Other' END AS home_team,
COUNT(id) AS total_matches
FROM matches_germany
GROUP BY home_team;