Найбільш титулований атлет у кожному регіоні
Ваше завдання у цій вправі — показати найбільш титулованого атлета для кожного регіону. Щоб побудувати цей звіт, потрібно використати віконну функцію ROW_NUMBER(), яка нумерує кожний рядок послідовними цілими числами: перший рядок — 1, другий — 2 і так далі.
Синтаксис цієї віконної функції: ROW_NUMBER() OVER (PARTITION BY field ORDER BY field). Зверніть увагу, що в саму функцію аргументи не передаються.
Якщо все налаштовано правильно, row_num = 1 означатиме найбільш титулованого атлета в межах цього регіону. Якщо кілька атлетів мають однаковий підсумок, будь-хто з них може з'явитися першим у результаті. Зверніть увагу, що віконні обчислення не можна використовувати в операторі HAVING або WHERE, тож для фільтрації потрібно застосувати підзапит.
За потреби звертайтеся до E:R Diagram. Ми використаємо summer_games_clean, щоб уникнути обробки null-значень.
Ця вправа є частиною курсу
Звітування в SQL
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
SELECT
-- Query region, athlete_name, and total gold medals
____,
____ AS athlete_name,
____ AS total_golds,
-- Assign a regional rank to each athlete
____ AS row_num
FROM ____ AS s
JOIN ____ AS a
ON ____
JOIN ____ AS c
ON ____
GROUP BY ____;