ComeçarComece gratuitamente

Subconsultas no Select para cálculos

As subconsultas em SELECT são uma maneira útil de criar colunas calculadas em uma consulta. Uma subconsulta em SELECT pode ser tratada como um único valor numérico a ser usado em seus cálculos. Ao escrever consultas em SELECT, é importante lembrar que a filtragem da consulta principal não filtra a subconsulta e vice-versa.

No exercício anterior, você criou uma coluna para comparar o total médio de gols de cada liga com a média geral de gols na temporada 2013/2014. Neste exercício, você adicionará uma coluna que compara diretamente esses valores, subtraindo a média geral da subconsulta.

Este exercício faz parte do curso

Manipulação de dados em SQL

Ver Curso

Instruções de exercício

  • Selecione a média de gols marcados em uma partida para cada liga na consulta principal.
  • Selecione a média geral de gols por partida na temporada 2013/2014 na subconsulta.
  • Subtraia a subconsulta da média de gols calculada para cada liga.
  • Filtre a consulta principal para que apenas os jogos da temporada 2013/2014 sejam incluídos.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

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;
Editar e executar código