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

Подзапросы в SELECT для вычислений

Подзапросы в SELECT — удобный способ создавать вычисляемые столбцы в запросе. Подзапрос в SELECT можно рассматривать как единственное числовое значение, которое используется в вычислениях. При написании подзапросов в SELECT важно помнить: фильтрация основного запроса не влияет на подзапрос — и наоборот.

В предыдущем упражнении вы создали столбец для сравнения среднего количества голов по каждой лиге с общим средним показателем за сезон 2013/2014. В этом упражнении вы добавите столбец, который напрямую сравнивает эти значения, вычитая общее среднее, полученное из подзапроса.

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

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

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

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

  • Выберите среднее количество голов за матч по каждой лиге в основном запросе.
  • Выберите среднее количество голов за матч в целом за сезон '2013/2014' в подзапросе.
  • Вычтите значение подзапроса из среднего количества голов, вычисленного для каждой лиги.
  • Отфильтруйте основной запрос так, чтобы включить только матчи сезона '2013/2014'.

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

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

SELECT
	-- Select the league name and average goals scored
	___ AS league,
	ROUND(___(___ + m.away_goal),2) AS avg_goals,
    -- Subtract the overall average from the league average
	ROUND(AVG(___ + m.away_goal) ___ 
		(SELECT ___(___ + away_goal)
		 FROM match 
         WHERE ___ = ___),2) AS diff
FROM league AS l
LEFT JOIN match AS m
ON l.country_id = m.country_id
-- Only include 2013/2014 results
WHERE ___ = ___
GROUP BY l.name;
Редактировать и запускать код