Comece agoraComece grátis

O que você acha do OVER aqui?

As funções de janela permitem que você crie um RANK de informações de acordo com qualquer variável que queira usar para classificar seus dados. Ao configurar isso, você precisará especificar qual coluna/cálculo deseja usar para calcular sua classificação. Isso é feito com a inclusão de uma cláusula ORDER BY dentro da cláusula OVER(). Veja abaixo um exemplo:

SELECT 

    id,

    RANK() OVER(ORDER BY home_goal) AS rank

FROM match;

Neste exercício, você criará um conjunto de dados de partidas classificado de acordo com quais ligas, em média, marcam mais gols em uma partida.

Este exercicio faz parte do curso

Manipulação de dados em SQL

Ver curso

Instruções do exercicio

  • Faça um SELECT do nome da liga e da média total de gols marcados em league e match.
  • Complete a função de janela para que ela calcule a média ponderada RANK() dos gols médios marcados em todas as ligas no banco de dados.
  • Ordene a classificação sobre (OVER) a média total de gols marcados em casa e fora.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

SELECT 
	-- Select the league name and average goals scored
	___ AS league,
    ___(___ + ___.away_goal) AS avg_goals,
    -- Rank each league over 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 e Executar Código