Hanno: SQL Abfrage: nach Aggregat sortieren

Hiho
Ich habe folgende Abfrage:

select artikel.artikelname as name, sum(bewertung.sterne), count(bewertung.sterne) from sfb_artikel as artikel, sfb_bewertung as bewertung where artikel.artikelnummer=bewertung.artikelnummer group by bewertung.artikelnummer

Er zeigt mir den Namen eines Artikels an und dazu noch die ANzahl der Bewertungen und die gesamtsumme der vergebenen Sterne. Ich will diese Abfrage nun nach sum(bewertung.sterne) / count(bewertung.sterne) sortieren lassen. Wie geht sowas ? ICh habs schon mit order by probiert aber das klappt irgendwie nicht, er meint
invalid use of group function
Ich hoffe ihr könnt mir helfen
Gruß
Hanno

  1. Halihallo Hanno

    Er zeigt mir den Namen eines Artikels an und dazu noch die ANzahl der Bewertungen und die gesamtsumme der vergebenen Sterne. Ich will diese Abfrage nun nach sum(bewertung.sterne) / count(bewertung.sterne) sortieren lassen. Wie geht sowas ? ICh habs schon mit order by probiert aber das klappt irgendwie nicht, er meint

    Welche Datenbank? - Das hängt ziemlich stark davon ab...

    invalid use of group function

    Ach so, MySQL...

    Ich hoffe ihr könnt mir helfen

    Mal sehen: MySQL hat etwas gegen Agregatsfuntionen in GROUP BY (evtl. in 4 anders? -
    Bei einigen dreier Versionen ist dem so). Versuche es über:

    SELECT normal_col, SUM(bewertung.sterne) / COUNT(bewertung.sterne) AS fORDBY
       FROM ...
       WHERE ...
       ORDER BY fORDBY

    ggf. fORDBY in Quotes (gab bei mir, wenn ich mich recht erinnere einmal Probleme).

    BTW. SUM/COUNT des gleichen Attributs ist AVG, erspart Tipparbeit.

    Viele Grüsse

    Philipp

    --
    RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
    Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.