Filtrar mediante subconsultas escalares
Las subconsultas son increíblemente potentes para aplicar transformaciones y filtros complejos. Puedes filtrar los datos en función de valores (escalares) únicos usando una subconsulta de formas que no puedes emplear con uniones o sentencias WHERE. Las subconsultas también se pueden utilizar para una manipulación más avanzada de tu conjunto de datos. Es probable que te encuentres con subconsultas en cualquier entorno del mundo real que utilice bases de datos relacionales.
En este ejercicio generarás una lista de partidos en los que los goles totales marcados (por ambos equipos en total) sean más de 3 veces la media de los partidos de la tabla matches_2013_2014, que incluye todos los partidos jugados en la temporada 2013/2014.
Este ejercicio forma parte del curso
Manipulación de datos en SQL
Instrucciones del ejercicio
- Calcula el triple de la media de goles marcados en casa y fuera de casa en todos los partidos de una subconsulta.
- Filtra la consulta principal por los partidos en los que los goles totales (goles en casa + goles fuera de casa) supere el valor de la subconsulta.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
SELECT
date,
home_goal,
away_goal
FROM matches_2013_2014
-- Filter for matches where total goals is greater than 3x the average
WHERE (___ + ___) ___
(SELECT ___ * AVG(___ + ___)
FROM ___);