¡SUBCONSULTAS por todas partes!
En las ligas de fútbol, los partidos se juegan en diferentes etapas (stages). Los equipos ganadores avanzan de una etapa a la siguiente hasta llegar a la final. En cada etapa, lo que está en juego es mayor que en la anterior. La tabla match incluye datos sobre las distintas etapas en las que se jugó cada partido.
A lo largo de los próximos 3 ejercicios, construirás una consulta con una subconsulta en cada una de las cláusulas SELECT, FROM y WHERE. ¿Cambia el promedio de goles marcados a medida que aumenta lo que está en juego de una etapa a la siguiente?
La consulta repite una misma subconsulta para que practiques cada ubicación. Cada copia vuelve a leer la tabla match, así que en tu propio trabajo calcularías la media global una sola vez, como se muestra en el Capítulo 4 con una función de ventana.
Este ejercicio forma parte del curso
Manipulación de datos en SQL
Instrucciones del ejercicio
- Extrae el número medio de goles totales en una subconsulta en
SELECT. - Calcula la media de goles totales para la
stageespecífica en la consulta principal. - Filtra tanto las subconsultas como la consulta principal para que solo se incluya información de la temporada 2012/2013.
GROUPla consulta por la columnam.stage.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
SELECT
-- Select the stage and average goals for each stage
m.stage,
ROUND(___(___ + m.away_goal),2) AS avg_goals,
-- Select the average overall goals for the 2012/2013 season
ROUND((SELECT ___(___ + away_goal)
FROM match
WHERE season = ___),2) AS overall
FROM match AS m
-- Filter for the 2012/2013 season
WHERE ___ = ___
-- Group by stage
GROUP BY ___;