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
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;