Zacznij terazZacznij za darmo

Zapytanie UNION, a następnie JOIN

Twoim celem jest stworzenie tego samego raportu co wcześniej, zawierającego następujące pola:

  • season, które przyjmuje wartość summer lub winter
  • country
  • events, pokazujące unikalną liczbę wydarzeń

W tym ćwiczeniu utwórz zapytanie, stosując podejście: najpierw UNION, potem JOIN. W tym celu użyj początkowego zapytania UNION jako podzapytania. Podzapytanie musi zawierać wszystkie niezbędne pola, w tym te używane w złączeniu.

Jak zawsze, możesz korzystać z diagramu E:R.

To ćwiczenie jest częścią kursu

Raportowanie w SQL

Zobacz kurs

Instrukcje do ćwiczenia

  • W podzapytaniu skonstruuj zapytanie zwracające pola season, country_id i event, łącząc dane z letnich i zimowych igrzysk za pomocą UNION ALL.
  • Użyj JOIN oraz kolejnej instrukcji SELECT, aby wyświetlić pola season, country i unikalną liczbę events.
  • Zastosuj GROUP BY do wszystkich pól, które nie są agregowane.
  • Posortuj raport według events w kolejności malejącej.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

-- 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 ____;
Edytuj i uruchom kod