Mailinglisten-Archive |
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