Zacznij terazZacznij za darmo

Mecz z OVER

Klauzula OVER() pozwala zastosować funkcję agregującą do całego zbioru danych – podobnie jak podzapytania w SELECT. Jej główną zaletą nad podzapytaniami jest to, że zapytania działają szybciej, a sama klauzula OVER() oferuje szeroki wachlarz dodatkowych funkcji i klauzul, które omówimy w dalszej części tego rozdziału.

W tym ćwiczeniu przepiszesz kilka zapytań z poprzednich rozdziałów, korzystając z klauzuli OVER().

To ćwiczenie jest częścią kursu

Data Manipulation in SQL

Zobacz kurs

Instrukcje do ćwiczenia

  • Wybierz ID meczu, name kraju, season, home_goal oraz away_goal z tabel match i country.
  • Uzupełnij zapytanie tak, aby obliczało średnią liczbę zdobytych bramek ogółem, a następnie umieszczało tę wartość agregującą w każdym wierszu za pomocą funkcji okna.

Interaktywne ćwiczenie praktyczne

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

SELECT 
	-- Select the match id, country name, season, home, and away goals
	___, 
    c.___ AS country, 
    m.season,
	___.home_goal,
	___,
    -- Use a window to include the aggregate average in each row
	___(___.home_goal + ___) ___ AS overall_avg
FROM match AS m
LEFT JOIN country AS c ON m.country_id = c.id;
Edytuj i uruchom kod