sql >> Base de Datos >  >> RDS >> Mysql

Cómo obtener una posición de rango de @curRank

Puedes mover el WHERE cláusula fuera de los resultados del cálculo de clasificación.

Ejemplo :

SELECT * FROM (
    SELECT
        `item`, (`totalrate` / `nrrates`) AS `rank`, 
        @curRank := @curRank + 1 AS `ranking` 
    FROM `rtgitems`, (SELECT @curRank := 0) r 
    ORDER BY (`totalrate` / `nrrates`) DESC 
    LIMIT 10
) results
WHERE item REGEXP 'kelly'