Спочатку UNION, потім JOIN
Ваша мета — створити такий самий звіт, як і раніше, який містить такі поля:
- season, що повертає
summerабоwinter - country
- events, що показує унікальну кількість подій
У цій вправі створіть запит, застосувавши підхід «спочатку UNION, потім JOIN». Використовуючи цей підхід, вам потрібно буде взяти початковий запит UNION як підзапит. Підзапит має містити всі релевантні поля, включно з тими, що використовуються в зʼєднанні.
За потреби звертайтеся до E:R Diagram.
Ця вправа є частиною курсу
Звітування в SQL
Інструкції до вправи
- У підзапиті побудуйте запит, який виводить
season,country_idіevent, поєднавши літні та зимові ігри за допомогоюUNION ALL. - Використайте
JOINі ще один операторSELECT, щоб показати поляseason,countryта унікальніevents. - Застосуйте
GROUP BYдо всіх неагрегованих полів. - Відсортуйте звіт за
eventsу спадному порядку.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
-- Add outer layer to pull season, country and unique events
SELECT
____,
____,
____ AS events
FROM
-- Pull season, country_id, and event for both seasons
(SELECT
____ AS season,
____,
____
FROM ____
____
SELECT
____ AS season,
____,
____
FROM ____) AS subquery
JOIN ____ AS c
ON ____
-- Group by any unaggregated fields
GROUP BY ____
-- Order to show most events at the top
ORDER BY ____;