Desarrollar subconsultas en FROM
En el ejercicio anterior descubriste que Inglaterra, los Países Bajos, Alemania y España eran los únicos países que tenían partidos en la base de datos en los que se habían marcado 10 o más goles en total. Averigüemos algunos detalles más sobre esos partidos: cuándo se jugaron, en qué temporadas se jugaron y cuántos fueron goles del equipo local y el equipo visitante.
Observarás que, en este ejercicio, el alias de la tabla se excluye en cada columna seleccionada en la consulta principal. Esto se debe a que la consulta principal extrae datos de la subconsulta, que se trata como una única tabla.
Este ejercicio forma parte del curso
Manipulación de datos en SQL
Instrucciones del ejercicio
- Completa la subconsulta dentro de la cláusula
FROM
. Selecciona el nombre del país en la tabla de países, junto con las columnas de fecha, goles en casa, goles fuera y goles totales de la tabla de partidos. - Crea una columna en la subconsulta que sume los goles en casa y fuera, llamada
total_goals
. Se utilizará para filtrar la consulta principal. - Selecciona el país, la fecha, los goles en casa y los goles fuera en la consulta principal.
- Filtra la consulta principal por partidos con 10 o más goles totales.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
SELECT
-- Select country, date, home, and away goals from the subquery
___,
date,
___,
away_goal
FROM
-- Select country name, date, home_goal, away_goal, and total goals in the subquery
(SELECT ___ AS country,
m.date,
___,
m.away_goal,
(___ + m.away_goal) AS total_goals
FROM match AS m
LEFT JOIN country AS c
ON m.country_id = c.id) AS subq
-- Filter by total goals scored in the main query
WHERE total_goals ___ ___;