phpbar.de logo

Mailinglisten-Archive

[php] letzten Wert einer Spalte

[php] letzten Wert einer Spalte

Sebastian Mendel lists at sebastianmendel.de
Don Aug 16 15:00:16 CEST 2007


Norbert Pfeiffer schrieb:
> Hallo,
> 
> es sollen die addiert und die
> Summe ausgegeben werden.
> Mit
> SET @msum=0;
> und:
>   SELECT (@msum:=@msum + score) as saldo
>     FROM games
> ORDER BY score DESC
>    LIMIT 3;
> erhaelt man die Summe der drei groessten Werte einer Spalte,
> allerdings erst am Ende der Saldo-Spalte. Deshalb habe ich
> schon versucht, das Query als Subselect einer MAX-Funktion
> einzusetzen. Hat aber bisher leider nicht geklappt.
> 
> Vielleicht hat ja hier jemand die rettende Idee ...


SELECT SUM(`score`)
  FROM (
   SELECT `score`
     FROM `games`
 ORDER BY `score` DESC
    LIMIT 3
)

???

eventuell auch:

   SELECT SUM(`score`)
     FROM
  (
     SELECT `score`,
            'a' AS `a`
       FROM `games`
   ORDER BY `score` DESC
      LIMIT 3
  )
 GROUP BY `a`


falls MySQL das fehlende GROUP BY bemängelt


-- 
Sebastian

php::bar PHP Wiki   -   Listenarchive