Switch to full style
Hier werden die SQL Grundlagen behandelt...
Antwort erstellen

Höchsten Wert aus einem gruppierten Ergebnis ermitteln

Mo 18. Feb 2019, 22:33

Hallo,

ich habe zwei Tabellen TEAM und MITARBEITER, wobei ein Mitarbeiter genau einem Team zugeordnet ist (1:n)

Tabelle TEAM
- tid (Primärschlüssel)
- bezeichnung

Tabelle MITARBEITER
- mid (Primärschlüssel)
- vorname
- nachname
- umsatz
- tid (Fremdschlüssel --> Tabelle TEAM)

Ziel: Ich möchte das Team mit dem höchsten Umsatz (= Summe aller Einzelumsätze der Mitarbeiter) ausgeben.
In meiner SQL-Abfrage bilde ich zunächst die Summe der Umsätze aller Mitarbeiter eines Teams (SUM) und gruppiere diese
nach Teams. --> Das funktioniert :-)

ABER wie bekomme ich dann das Team mit dem höchsten Umsatz?

SELECT t.name, SUM(m.umsatz) AS teamumsatz
FROM team t
JOIN mitarbeiter m
ON t.tid = m.tid
GROUP BY t.tid
HAVING ???

Ich weiß, dass ich hier ein HAVING mit einem Sub-Select brauche, komme aber nicht weiter.

Kann mir da jemand helfen?

Danke & Gruß
Der Maddin
Antwort erstellen