Subconsultas en Select para cálculos
Las subconsultas en SELECT
son una forma útil de crear columnas calculadas en una consulta. Una subconsulta en SELECT
puede tratarse como un único valor numérico para utilizarlo en tus cálculos. Al escribir consultas en SELECT
, es importante recordar que filtrar la consulta principal no filtra la subconsulta, y viceversa.
En el ejercicio anterior creaste una columna para comparar los goles totales medios de cada liga con los goles medios totales de la temporada 2013/2014. En este ejercicio añadirás una columna que compare directamente estos valores restando la media total a la subconsulta.
Este ejercicio forma parte del curso
Manipulación de datos en SQL
Instrucciones de ejercicio
- Selecciona los goles medios marcados en un partido de cada liga en la consulta principal.
- Selecciona los goles medios marcados en un partido en total en la temporada 2013/2014 en la subconsulta.
- Resta la subconsulta al número medio de goles calculado para cada liga.
- Filtra la consulta principal para que solo se incluyan los partidos de la temporada 2013/2014.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
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;