Mailinglisten-Archive |
Hallo Norbert, Am Donnerstag, 16. August 2007 schrieb Norbert Pfeiffer: > > Deine Beschreibung ist völlig wirr. :-) > > was kiffst Du ... <gruebel> kommt das viele Grübeln vom Kiffen? ;-) > Okay, ich versuche es noch mal: > > Aus der Spalte 'score' sollen die drei groessten Werte summiert > werden, was wie folgt erledigt wird: > > SET @msum=0; > > SELECT (@msum:=@msum + score) as saldo > FROM games > ORDER BY score DESC > LIMIT 3; > > Die gesuchte Summe steht nun in der letzten Zeile, deshalb wird > eine andere Loesung gesucht. Erste Versuche, das obige Query > als Subquery in SELECT MAX(); schlugen jedoch fehl ... :-( wenn Du die Query so als Subquery verwenden willst, muß sie ein eindeutiges Ergebnis zurück liefern. Bei einem dreizeiligen Ergebnis gibt es daher einen Fehler. Du brauchst auch keine andere Lösung, sondern - wenn ich das richtig sehe - einfach nur ein vernünftiges LIMIT, welches Dir anstatt der ersten drei Zeilen nur die dritte Zeile zurückliefert. Versuche es also mal mit LIMIT 2,1. Viele Grüße Lutz
php::bar PHP Wiki - Listenarchive