Gonzo: Ranking - Zeile ermitteln MySQL 4.0.14

Beitrag lesen

alle 24 Stunden wird diese Tabelle nun mit "ALTER TABLE tabelle ORDER BY punkte DESC" sortiert, ...

Das ist Quatsch, vermutlich haben dir die Kollegen das schon erklärt.

|user|punkte|
|2   |700   |
|3   |600   |
|1   |500   |

wenn ich nun per "SELECT * FROM tabelle WHERE user = 1"

Da solltest Du mit Sub-SELECTs kommen, also bspw.:

  
SELECT  
 *,              -- es ist oft besser die Datenfeldnamen zu benennen, also horizontal zu filtern (vertikales Filtern empfiehlt sich natürlich auch meist)  
 (  
 SELECT  
  COUNT(*)  
 FROM  
  Tabelle  
 WHERE  
  (  
  punkte >  
   (  
   SELECT  
    Punkte  
   FROM  
    Tabelle  
   WHERE  
    (  
    user = 1  
    )  
   )  
  ) AS Platz  
FROM  
 Tabelle  
WHERE  
 (  
 user = 1  
 )  

PS: Sehe gerade MySQL 4, das kann vielleicht keine Sub-SELECTs.
:-)