Seite 1 von 1

Top Foto Listing, MySQL Abfrage probleme, wie? Bitte helfen!

Verfasst: 18.03.2007 13:10
von Mafia GmbH
Hallo, ich lasse bei mir auf der Seite Fotos bewerten. Und jeder User darf bis zu 9 Fotos zur bewertung hochladen.

So wen ich in der Top10 Liste die Fotos nach der bewertung listen lasse, kommen auch von einem Profil mehr Fotos vor.
Ich will aber so machen, das es von einem Profil nur das beste Foto angezeigt wird.

Also eine Beispiel Datenbank.

Code: Alles auswählen

ID UserID   BILDNR   BEWERTUNG
1     1        1          100
2     1        2           90
3     2        1           70
4     2        2           71
Also ich will das es nach meiner Beispiel Datenbank volgende Datensätze in der Reihnefolge anzeigt.

ID = 1 (PLATZ1)
ID = 4 (PLATZ2)

Also es wird erstmal geschaut das das UserID = 1 Profil das beste Foto besitzt, und zwar hat 100 Punkte bekommen. Und dann wird das zweite profil geschautn und nach den besten Bild Punkten gesucht. Dann müssen die ausgewelte Profile noch nach den Punkten sortiert werden.
Wie sieht die MySQL Abfrage dafür den aus?

Verfasst: 18.03.2007 19:21
von gn#36
Meinst du sowas:

Code: Alles auswählen

SELECT UserID FROM tabelle 
GROUP BY UserID
ORDER BY BEWERTUNG DESC LIMIT 0,10
Ich könnte mir vorstellen, dass das funktioniert, bin mir da aber nicht 100% sicher, müsste man ausprobieren. Tabellenspalten mit großgeschriebenen Namen sind übrigens nicht besonders gut für die Übersicht der SQL Befehle.

Vermutlich funktioniert auch das hier besser:

Code: Alles auswählen

SELECT UserID FROM tabelle 
GROUP BY UserID 
ORDER BY max(BEWERTUNG) DESC LIMIT 0,10