ComenzarEmpieza gratis

¿Qué hay OVER aquí?

Las funciones de ventana te permiten crear una RANK de información según cualquier variable que quieras utilizar para ordenar tus datos. Al configurar esto, tendrás que especificar qué columna o cálculo quieres utilizar para calcular tu clasificación. Esto se hace incluyendo una cláusula ORDER BY dentro de la cláusula OVER(). A continuación tienes un ejemplo:

SELECT 

    id,

    RANK() OVER(ORDER BY home_goal) AS rank

FROM match;

En este ejercicio crearás un conjunto de datos de partidos clasificados según en qué ligas, de media, se marcan más goles en un partido.

Este ejercicio forma parte del curso

Manipulación de datos en SQL

Ver curso

Instrucciones de ejercicio

  • Selecciona el nombre de la liga y los goles totales medios marcados en league y match.
  • Completa la función de ventana para que calcule la clasificación de goles medios marcados en todas las ligas de la base de datos.
  • Ordena la clasificación por el total medio de goles marcados en casa y fuera.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

SELECT 
	-- Select the league name and average goals scored
	___ AS league,
    ___(___ + ___.away_goal) AS avg_goals,
    -- Rank each league according to the average goals
    ___ ___(___ ___ AVG(___.home_goal + ___)) AS league_rank
FROM league AS l
LEFT JOIN match AS m 
ON l.id = m.country_id
WHERE m.season = '2011/2012'
GROUP BY l.name
-- Order the query by the rank you created
ORDER BY ___;
Editar y ejecutar código