sql >> Database teknologi >  >> RDS >> Mysql

hvordan man får positionen for sorterede rækker ved hjælp af mysql og php

Der er to måder at gøre det på:

Metode 1:

SET @i = 0;

SELECT * FROM 
scores s1 INNER JOIN (SELECT *, @i := @i + 1 AS rank FROM scores ORDER BY score DESC) AS s2 USING (id);

Metode 2:

SELECT *, (SELECT COUNT(1) AS num FROM scores WHERE scores.score > s1.score) + 1 AS rank FROM scores AS s1
ORDER BY rank asc


  1. Postgres-begrænsning for unikt dato- og tidsinterval

  2. MySQL FEJL 1290 (HY000) --secure-file-priv mulighed

  3. Hvordan sender man e-mail fra SQL Server?

  4. PostgreSQL, kompleks forespørgsel til beregning af ingredienser efter opskrift