Hallo! Ich habe eine Tabelle in MS SQL mit den Spalten Kunde, Filiale, Umsatz. In welcher Filiale hat der Kunde den höchsten Umsatz gemacht?

... komplette Frage anzeigen

1 Antwort

Also du willst für jeden Kunden wissen, in welcher Filiale er den meisten Umsatz gemacht hat? Ich würde erstmal den maximalen Umsatz pro Kunden ermitteln

SELECT Kunde, MAX(Umsatz) AS maxUmsatz
FROM Tabelle
GROUP BY Kunde

Die Abfrage kannst du dann als Unterabfrage benutzen, um zu sehen, zu welcher Filiale der Umsatz gehört (falls es mehrere Filialen gibt, bei denen der Kunde denselben Umsatz gemacht hat, werden die alle angezeigt)

SELECT Kunde, Filiale, Umsatz
FROM Tabelle INNER JOIN
(SELECT Kunde, MAX(Umsatz) AS maxUmsatz
FROM Tabelle
GROUP BY Kunde) AS tblMaxUmsatz ON Tabelle.Kunde = tblMaxUmsatz.Kunde AND Tabelle.Umsatz = tblMaxUmsatz.maxUmsatz



Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Pianoverkauf
25.02.2016, 13:17

Vielen Dank!

Hat perfekt funktioniert!

1

Was möchtest Du wissen?