ComenzarEmpieza gratis

CTE con subconsultas anidadas

Si incluyes varias subconsultas en la cláusula FROM con sentencia anidada, es probable que tu consulta se haga larga, compleja y difícil de leer.

Dado que muchas consultas se escriben con la intención de guardarlas y volver a ejecutarlas en el futuro, una organización adecuada es clave para un flujo de trabajo fluido. Organizar las subconsultas como CTE te ahorrará tiempo, espacio y confusión a largo plazo.

Este ejercicio forma parte del curso

Manipulación de datos en SQL

Ver curso

Instrucciones del ejercicio

  • Declara una CTE que calcule el total de goles de los partidos de agosto de la temporada 2013/2014.
  • Aplica LEFT JOIN a la CTE en la tabla de la liga utilizando country_id de la CTE match_list.
  • Filtra la lista en la subconsulta interna para seleccionar solo los partidos de agosto de la temporada 2013/2014.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

-- Set up your CTE
___ match_list ___ (
    SELECT 
  		country_id,
  	   (home_goal + away_goal) AS goals
    FROM match
  	-- Create a list of match IDs to filter data in the CTE
    WHERE id IN (
       SELECT ___
       FROM ___
       WHERE season = ___ AND EXTRACT(MONTH FROM ___) = ___))
-- Select the league name and average of goals in the CTE
SELECT 
	___,
    ___(___)
FROM league AS l
-- Join the CTE onto the league table
LEFT JOIN ___ ON l.id = match_list.___
GROUP BY l.name;
Editar y ejecutar código