Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL Holen Sie sich Rang von Bestenlisten

Wenn die Datenbank diese Abfrage ausführt, wählt sie zuerst aus Scores , Filterung nach name = '$name' .

Dann führt es für jede Zeile die Unterabfrage aus:

(
 SELECT  COUNT(*)
   FROM    Scores ui
  WHERE   (ui.score, -ui.ts) >= (uo.score, -uo.ts)
) AS rank

Das bedeutet für jede Reihe von Scores Mit dem gesuchten Namen wird gesucht, wie viele Datensätze sich in Scores befinden wobei (ui.score, -ui.ts) größer oder gleich den Werten der aktuellen Zeile ist.

Ich hoffe Ihnen geholfen zu haben...