Also, ich bin da grade am SQL testen:
PHP-Code:
SELECT ......
IF(votes <= 250, 0.25,IF(votes <= 500 AND votes <=750, 0.50,IF(votes > 750 AND votes <= 1000,0.75,0)) AS fakt
FROM vereine ORDER BY (punkte/votes * fakt) DESC LIMIT 10
Hab zwar letztens erst mitbekommen das man auch IF Abfragen mit SQL machen kann,
jedoch stimmt das so wohl nicht, denn ich bekomme nur:
"You have an error in your SQL syntax."
...von der "Logik" könnte es ja schon einigermaßen passen, oder ?
Edit (noch ein Versuch):
PHP-Code:
$sql = "SELECT
............................
FROM vereine
IF 'votes' <= 250 THEN ORDER BY(punkte/votes * 0.25)
ELSEIF votes >250 AND votes <= 500 THEN ORDER BY(punkte/votes*0.50)
ELSEIF votes >500 AND votes <= 750 THEN ORDER BY(punkte/votes*0.75)
ELSE ORDER BY(punkte/votes) LIMIT 10";
Edit again:
Also, falls es jemanden interessieren sollte, ich hab das jetzt so gelöst:
Eine neue Spalte "faktor" in meiner Tabelle.
Ein Cronjob checkt mir dann taglich 2 mal die Votes und korrigiert ggf. den Faktor.
Für die Ausgabe benutzer ich ... ORDER BY(punkte/votes*faktor) ...
Klappt auch super

Danke nochmals !