Hallo an alle
Ich hoffe jemand kann mir helfen. Ich habe eine Abfrage über mehrere Tabellen, die die Gesamtpunktzahl eines Spielers errechnen soll. Die Abfrage selber funktioniert, aber ich kann leider nicht nach dem Punktewert sortieren. Selbst PhpMyAdmin hat da versagt. Die Punkte wollen sich einfach nicht SOrtiert anzeigen lassen und er sortiert nach der ID. Hier die Daten und die Abfrage:
SQL-Abfrage:
SELECT (
COALESCE( (
SELECT SUM( ( haus.KG \* stadtviertel.Level) /10 )
FROM stadtviertel, haus
WHERE Besitzer = spieler.ID
AND haus.ID = stadtviertel.Bild ) , 0
) +
COALESCE( (
SELECT SUM( kosten /10 )
FROM forschungen, saveforschung
WHERE UserID = spieler.ID
AND forschungen.ID = ForschungID ) , 0
) +
COALESCE( (
SELECT SUM( (
`Level` + Feuerkraft \* Koepfe + Gsw\_luft + Panzer\_Kopf + Panzer\_body + Schlag + Tritt + treffsicherheit) / `Alter` )
FROM drachen
WHERE Besitzer = spieler.ID ) , 0
)
) AS punkte, spieler.ID
FROM spieler
WHERE spieler.status =1
GROUP BY spieler.ID
ORDER BY `punkte` ASC
LIMIT 0 , 30
Die Ergebnissdaten:
punkte aufsteigend ID
13856.796386525 1
10898.327953916 2
17719.85805702 3
28644.209586625 4
28821.857511226 5
17386.397407489 6
20865.137 7
10741.698251446 8
19329.357073134 9
16441.88789141 10
13190.782596972 11
25948.707 12
334.73001456855 13
2145.9259908257 18
3299.6325735991 19
So, ziemlich deutlich zu sehen, dass er nach ID, statt nach Punkten sortiert obwohl „Order by punkte“ dort steht. ich hoffe jemand kann mir helfen und vielen Dank schon mal, dafür, dass ich euch Zeit rauben darf ^^
Mit freundlichen Grüßen
D. Mertins