Interogare UNION, apoi JOIN
Scopul tău este să creezi același raport ca înainte, care conține următoarele câmpuri:
- season, care afișează fie
summer, fiewinter - country
- events, care arată numărul unic de evenimente
În acest exercițiu, construiește interogarea folosind abordarea UNION primul, JOIN al doilea. Când aplici această abordare, va trebui să folosești interogarea UNION inițială ca subinterogare. Subinterogarea trebuie să includă toate câmpurile relevante, inclusiv pe cele folosite într-un join.
Ca întotdeauna, nu ezita să consulți Diagrama E:R.
Acest exercițiu face parte din cursul
Raportare în SQL
Instrucțiuni pentru exercițiu
- În subinterogare, construiește o interogare care să returneze
season,country_idșievent, combinând jocurile de vară și de iarnă cuUNION ALL. - Folosește un
JOINși o altă instrucțiuneSELECTpentru a afișa câmpurileseason,countryșieventsunice. - Aplică
GROUP BYpentru toate câmpurile neagregate. - Sortează raportul după
eventsîn ordine descrescătoare.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
-- 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 ____;