Georg: SELECT geht und geht nicht ?!?

Hallo,

ich verwende in meiner MySQL-Anweisung folgenden Code:
SELECT picid, COUNT(*), AVG(votewert) FROM db_votes GROUP BY picid ORDER BY AVG(votewert) DESC LIMIT 0 , 10
Dieses funktioniert auch auf meinem Testserver (MS 2K, XAMP) wie auch auf einem "echtem" Server problemlos, nur leider bekam ich gerade die Rückmeldung, das dieser Select wohl nicht auf jeder Maschine läuft und stattdessen einen 1111-Fehler (falsche Verwendung des GROUP BY) verursacht.
Nun habe ich zwar direkt nachgelesen, aber irgendwie finde ich nicht die Lösung (ja, ich weiß, wer den Wald vor lauter Bäumen nicht sieht...).
Bin so ziemlich am Ende mit meinem SQL-Latein und wollte deshalb hier einmal nachfragen, ob jemand mir bei der Lösung behilflich sein kann...

VG
Georg

  1. Hi !

    SELECT picid, COUNT(*), AVG(votewert) FROM db_votes GROUP BY picid ORDER BY AVG(votewert) DESC LIMIT 0 , 10

    Hast Du mal

    select picid, count(picid), AVG(votewert) usw.

    ausprobiert?

    Gruß

    Hans

  2. Hallo,

    ich verwende in meiner MySQL-Anweisung folgenden Code:
    SELECT picid, COUNT(*), AVG(votewert) FROM db_votes GROUP BY picid ORDER BY AVG(votewert) DESC LIMIT 0 , 10

    Das sollte funktionieren:
    SELECT picid, COUNT(*), AVG(votewert) FROM db_votes GROUP BY picid,AVG(votewert) ORDER BY AVG(votewert) DESC LIMIT 0 , 10

    Viel Spaß

  3. yo,

    für mich sieht die abfrage auf den ersten blick richtig aus. kann es sein, dass die versionen von mysql unterschiedlich sind und du eventuell noch andere spalten ausser picid mit ausgeben willst, die keine aggregat-funktionen sind ?

    Ilja