НачатьНачать бесплатно

Развиваем подзапросы во FROM

В предыдущем упражнении вы выяснили, что только Англия, Нидерланды, Германия и Испания имеют в базе данных матчи, в которых было забито 10 или более голов. Теперь давайте узнаем подробнее об этих матчах: когда они проводились, в каком сезоне и сколько голов было забито дома и в гостях.

Обратите внимание: в этом упражнении псевдонимы таблицы не указываются ни для одного из столбцов в основном запросе. Это связано с тем, что основной запрос извлекает данные из подзапроса, который рассматривается как единая таблица.

Это упражнение является частью курса

Манипуляции с данными в SQL

Посмотреть курс

Инструкции к упражнению

  • Заполните подзапрос внутри предложения FROM. Выберите столбец name из таблицы country, а также столбцы date, home_goal, away_goal и total_goals из таблицы match.
  • Создайте в подзапросе столбец, который суммирует домашние и гостевые голы, и назовите его total_goals. Он будет использоваться для фильтрации в основном запросе.
  • Выберите столбцы country, date, home_goal и away_goal в основном запросе.
  • Отфильтруйте результаты основного запроса, оставив только матчи, в которых было забито 10 или более голов.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

SELECT
	-- Select country, date, home, and away goals from the subquery
    ___,
    date,
    ___,
    away_goal
FROM 
	-- Select country name, date, home_goal, away_goal, and total goals in the subquery
	(SELECT ___ AS country, 
     	    m.date, 
     		___, 
     		m.away_goal,
           (___ + m.away_goal) AS total_goals
    FROM match AS m
    LEFT JOIN country AS c
    ON m.country_id = c.id) AS subq
-- Filter by total goals scored in the main query
WHERE total_goals ___ ___;
Редактировать и запускать код