НачатьНачать бесплатно

Переверните результаты с помощью OVER

В предыдущем упражнении ранжирование строилось от наименьшего значения к наибольшему. Добавив DESC в оконную функцию, можно получить ранжирование от наибольшего к наименьшему.

SELECT 
    id,
    RANK() OVER(ORDER BY home_goal DESC) AS rank
FROM match;

Это упражнение является частью курса

Манипуляции с данными в SQL

Посмотреть курс

Инструкции к упражнению

  • Выберите название лиги name и среднее суммарное количество голов из таблиц league и match.
  • Заполните оконную функцию, чтобы ранжировать каждую лигу по среднему количеству голов — от наибольшего к наименьшему.
  • Отсортируйте основной запрос с помощью ORDER BY по только что созданному рангу.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

SELECT 
	-- Select the league name and average goals scored
	___ AS league,
    ___(___ + m.away_goal) AS avg_goals,
    -- Rank leagues in descending order by average goals
    ___ ___(___ ___ ___(___ + m.away_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
___ ___ ___;
Редактировать и запускать код