Prośba o pomoc z zadaniem z SQL Oracle

0

Witam,
Mam problem z zadaniem o treści : "Wyznacz prowadzącego, który prowadzi największą liczbę przedmiotów."
Co udało mi się wykombinować:

SELECT Prowadzacy.Nazwisko, Prowadzacy.Imie, MAX(COUNT(ID_PROWADZACY))From KIERUNKI_Przedmioty, Prowadzacy, Przedmioty WHERE Prowadzacy.Id_Prowadzacy= Kierunki_Przedmioty.ID_Prowadzacy AND 
Kierunki_Przedmioty.ID_Przedmiotu= Przedmioty.ID_Przedmiotu GROUP BY id_prowadzacy, Prowadzacy.Nazwisko, Prowadzacy.Imie;

Jednak jest to źle. Czy byłby ktoś w stanie napisać jak powinno być poprawnie?
Z góry dzięki za odpowiedź.
relacje - Kopia.png

3
WITH CTE as
( SELECT kp.ID_prowadzacy, COUNT(ID_Przedmiotu) IloscPrzedmiotow
From KIERUNKI_Przedmioty kp
JOIN  Przedmioty p ON kp.ID_Przedmiotu = p.ID_Przedmiotu
GROUP BY kp.ID_prowadzacy
)

, maxPro as
(SELECT ID_prowadzacy, MAX(IloscPrzedmiotow) MaxPrzedmiotow
FROM CTE
GROUP BY ID_prowadzacy)

SELECT t.Nazwisko, t.Imie, MaxPrzedmiotow
From Prowadzacy p
JOIN maxPro m 
ON t.ID_Prowadzacy = m.Id_Prowadzacy

Edit: Brakowalo group by w CTE

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0