Hallo,
habe ein kleines Problem und stehe gerade auf dem Schlauch.
Ich habe folgende Tabelle in gekürzter Form:
id | value | user | cat
1 | 100 | 1 | 1
2 | 50 | 2 | 2
3 | 60 | 3 | 3
4 | 150 | 4 | 1
jetzt möchte ich die ausgabe gruppieren nach "cat" und jeweils die zeile mit dem höchsten "value" haben.
ich habe bisher zwei abfragen probiert:
1.
Hier ist das Problem, dass jetzt zB der Eintrag für "cat 1" kopmplett rausfällt, weil er zeile 1 auswählt, dort "value" aber nicht = MAX(value) ist, weil zeile 1 100 ist und MAX = 150.
2.
hier ist jetzt das problem, dass zwar alle max values angezeigt werden, aber nicht immer der richtige user, sonder für den max value = 150 wird jetzt user 1 ausgegeben.
Kann mir da bitte jemand helfen. Komme gerade nicht weiter, obwohl die Lösung eigentlich easy sein müsste.
danke.
habe ein kleines Problem und stehe gerade auf dem Schlauch.
Ich habe folgende Tabelle in gekürzter Form:
id | value | user | cat
1 | 100 | 1 | 1
2 | 50 | 2 | 2
3 | 60 | 3 | 3
4 | 150 | 4 | 1
jetzt möchte ich die ausgabe gruppieren nach "cat" und jeweils die zeile mit dem höchsten "value" haben.
ich habe bisher zwei abfragen probiert:
1.
PHP-Code:
SELECT
value,user,cat
FROM
table
GROUP BY
cat
HAVING
value = MAX(value)
2.
PHP-Code:
SELECT
max(value),user,cat
FROM
table
GROUP BY
cat
Kann mir da bitte jemand helfen. Komme gerade nicht weiter, obwohl die Lösung eigentlich easy sein müsste.
danke.
Kommentar