Diskussion
SQL: Top 10 Nutzer mit bestbewertetsten Bildern
Group By + Aggregat über zwei Tabellen
| pangu |
Geschrieben am: Mi 27.06.2007, 14:46
|
![]() AyomRank 6 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 838 Mitglied seit: 29.07.2005 |
habe folgende struktur:
user: id | nick | ... bilder: id | userid | votes | ... ~~~ wie kann ich jetzt die top 10 der user mit den bestbewertesten bildern auslesen? also er soll nacheinander alle votes der bilder eines users auslesen, summieren und dann die durchshnittsbewertung der bilder dieses users ermitteln. die 10 user mit den durchschnittlich bestbewertesten bildern sollen ausgegeben werden. -> wie frage ich das in mysql ab? thx mein ansatz: SELECT user.nick FROM user INNER JOIN bilder ON bilder.id = user.id GROUP BY user.id ORDER BY AVG (bilder.votes) DESC ergebnis: Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in ... -> weiß jmd. wie man das macht? thx -------------------- |
![]() |
| Duvi |
#2 Geschrieben am: Mi 27.06.2007, 15:13 (+00:26)
|
![]() AyomRank 6 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 536 Mitglied seit: 4.10.2006 |
meines wissens kann mysql kein order über eine funktion.
du müsstest also: select avg(bilder.votes) as mittelwert .... order by mittelwert verwenden. versuch mal: select distinct u.nick, b.id, avg(b.votes) as mittelwert from user u, bilder b where u.id = b.userid order by mittelwert desc ungetestet!!! |
![]() |
| Maik contaxe AG |
#3 Geschrieben am: Mi 27.06.2007, 19:18 (+04:05)
|
||||||
![]() AyomRank 6 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 520 Mitglied seit: 16.03.2006 |
ein kleiner Logikfehler in der ON-Klausel... du joinst die ID des Bildes auf die ID des Benutzers, denke mal du meintest es so:
meine vorgehensweise würde ungefähr so aussehen:
keine Ahnung ob's stimmt... -------------------- |
||||||
![]() |
| Jürgen Auer Server-Daten - Online-CRM-Lösungen |
#4 Geschrieben am: Mi 27.06.2007, 20:29 (+01:10)
|
||||
|
AyomRank 9 Gruppe: Experten Entwicklung Beiträge: 3276 Mitglied seit: 4.02.2006 |
Nach meinen sehr bescheidenen PHP-Kenntnissen heißt das, daß die Abfrage mindestens einen Syntaxfehler hatte. Sprich: Teste die Abfrage zunächst interaktiv, um genauere Fehlermeldungen zu kriegen, bevor Du sie in PHP einbettest. Und dann gilt (zumindest beim ANSI-Standard): Wenn gruppiert/aggregiert wird, dann müssen Ausgabespalten entweder in Aggregatfunktionen verwendet werden oder in der Group By - Klausel auftauchen. Das fehlt bei den beiden bis jetzt geposteten Lösungen.
Das geht auf dem MS-SqlServer. Falls mySql eine Sortierung nach dem Aliasnamen nicht zuläßt, müßte man das über eine Unterabfrage machen (die von älteren mySql nicht unterstützt wird). -------------------- Web-Anwendung 3.0: Ein Online-Kalender für Termine vieler Filialen.
Server-Daten - die Single-Data-Solution: Web-Datenbanken als Online - CRM - Lösung. Ihre Geschäftsprozesse entscheiden, was Ihre Online-Datenbank macht. Sie konzentrieren sich auf Ihr Kerngeschäft - Ihre Datenbank funktioniert. |
||||
![]() |
| pangu |
#5 Geschrieben am: Mi 27.06.2007, 20:47 (+00:18)
|
![]() AyomRank 6 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 838 Mitglied seit: 29.07.2005 |
@jAuer: so funktioniert es, vielen dank
-------------------- |
![]() |
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
Trackback-Url: http://www.ayom.com/track/t/19119
![]() |
![]() ![]() ![]() |
| Themen Titel | Autor | Views | Antworten | Letzte Aktion |
| Brauche Nutzer die sich anmelden! | mywebroom | 275 | 2 | Do 26.11.2009, 12:28 |
| Nutzer von Google Analytics abgemahnt | Christian | 658 | 7 | Do 26.11.2009, 07:24 |
| Suche Nutzer von Verzeichnissen | Christian | 142 | 0 | Sa 18.04.2009, 09:42 |
| AdSense mit Bildern verursachte 400% mehr Einnahme | woody | 948 | 7 | So 30.03.2008, 22:53 |
| Schweiz: 1 Jahr Gefängnis für P2P-Nutzer | Joel | 2335 | 11 | Sa 8.12.2007, 12:16 |
| Ausrichten von Bildern | Peter Schneider | 358 | 3 | So 18.03.2007, 11:22 |
| Abmahnung für Web1 Confixx-Nutzer | HoBbY | 1605 | 20 | Di 6.03.2007, 19:35 |
| YouTube will Nutzer mitverdienen lassen | benny | 2522 | 13 | So 25.02.2007, 12:01 |
| www art project mit ca. 200 bildern von jedem land | Liebenwald | 529 | 2 | Sa 6.01.2007, 21:12 |
Anzeige - [Hier werben / Mediadaten]

















