Mailinglisten-Archive |
Hallo Michael, > Von: Michael Schmitz [mailto:michael.schmitz_(at)_impuls-club.de] > ... > Wenn ich nun die Ergebnisse so aufbereiten will, dass ich die Seiten Daten > nach AVG(Vote) sortiert habe, bekomme ich ein falsches Ergebniss. > > SELECT avg(Wahl.Vote) AS Schnitt,count(Wahl.Vote) AS > Anzahl,Seiten.Name,Seiten.Link,Seiten.Datum usw. FROM Seiten LEFT > JOIN Wahl > ON Seiten.Id=Wahl.SeitenId GROUP BY Seiten.Id ORDER BY Schnitt z.B. (ASC). > > Das Ergebniss sieht immer gleich aus. Alle Datensätze von Seiten > für die es > keinen Datensatz in Wahl gibt stehen am Anfang. > Obwohl der avg Wert 0 sein müsste. > Bei 0 Sätzen müßte das Ergebnis von avg(Wahl.Vote) NULL sein. Daher statt dessen z.B. IFNULL(avg(Wahl.Vote),0) as Schnitt Wahlweise kannst Du natürlich auch einen anderen Wert als 0 in der Funktion angeben um die Sache ans Ende zu sortieren, z.B. 99999 Gruss, Michael Donning --- *** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive