Организация запросов с помощью CTE
Ранее вы изменяли запрос на основе задания из главы 2, используя обобщённые табличные выражения (CTE).
Теперь давайте расширим это упражнение и изучим детали матчей с очень высоким счётом с помощью CTE. Так же как и подзапрос в FROM, вы можете объединять таблицы внутри CTE.
Это упражнение является частью курса
Манипуляции с данными в SQL
Инструкции к упражнению
- Объявите CTE, в котором создайте список всех матчей с названием лиги (
name). - Выберите столбцы
league,date,homeиawayголов из CTE. - Отфильтруйте основной запрос, оставив матчи с 10 и более голами.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
-- Set up your CTE
___ match_list ___ (
-- Select the league name, date, home, and away goals
SELECT
___ AS league,
___,
___,
m.away_goal,
(m.home_goal + m.away_goal) AS total_goals
FROM match AS m
LEFT JOIN league as l ON m.country_id = l.id)
-- Select the league, date, home, and away goals from the CTE
SELECT ___, date, ___, away_goal
FROM ___
-- Filter by total goals
WHERE total_goals ___;