Hallo Community,
ich hab mal eine frage:
Über diesen SQL Query lasse ich mir die summe aller kosten pro mitarbeiter berechnen bei einer reise:
So das klappt auch soweit, nur möchte ich nun das max bei dieser summe auslesen und den dazugehörigen namen, abteilungsname, personalnummer ausgeben.
Ich hatte gedacht das ich das vielleicht mit subquerys machen muss in der art:
doch ich erhalte nicht nur die tuppels mit den höchsten reise kosten sondenr alle. wo könnte denn der hund begraben liegen?
btw desc 1 zu stellen ist keine alternative, da mehrere personen den selben wert annehmen können und deshalb eine mehrfache ausgabe geschehen muss.
ich hab mal eine frage:
Über diesen SQL Query lasse ich mir die summe aller kosten pro mitarbeiter berechnen bei einer reise:
Code:
SELECT SUM(Reise.Kosten) Sum
FROM Mitarbeiter, Reise,Abteilung
WHERE (Mitarbeiter.PNr = Reise.Mitarbeiter and Mitarbeiter.ANr = Abteilung.ANr)
Group by Mitarbeiter.Name Order by sum desc
Ich hatte gedacht das ich das vielleicht mit subquerys machen muss in der art:
Code:
SELECT M.Name,M.PNr,A.AName,max(Summe.sum) f
FROM
(
SELECT SUM(R.Kosten) sum,M.Pnr,R.Kosten
FROM Mitarbeiter M, Reise R,abteilung A
WHERE (M.PNr = R.Mitarbeiter and M.ANr = A.ANr)
Group by M.Name Order by sum desc
)
Summe,Mitarbeiter M ,Abteilung A,Reise R
where (M.ANr = A.ANr) and (M.Pnr= summe.pnr)
Group by M.name order by f desc
btw desc 1 zu stellen ist keine alternative, da mehrere personen den selben wert annehmen können und deshalb eine mehrfache ausgabe geschehen muss.