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

Tabla de clasificación mySQL rápida con rango de jugador (y jugadores circundantes)

TABLA ALTERADA
ALTER TABLE es cambiar la estructura de la tabla.
Lo usa cuando ha cometido un error o ha cambiado de opinión sobre cómo hacer las cosas.
Si no sabe lo que hace, no úsalo.

ÍNDICE
Un INDEX es hacer que la clasificación sea más rápida , siempre asigne un índice a las columnas que usa regularmente en un WHERE cláusula o en un ORDER BY cláusula.
Puede ordenar y seleccionar muy bien sin índices, solo que más lento.

CLASIFICACIÓN
Si desea enumerar a los jugadores de mayor rango en la parte superior, entonces:

SELECT field1, field2, ... FROM players ORDER BY score DESC LIMIT 25  

Le dará los 25 mejores jugadores con mayor puntuación, la puntuación más alta primero (se ordena en orden inverso DESC de mayor a menor)

CLASIFICACIÓN DE LUJO

SELECT @rank:= 0; -- <<-- First run this query!

SELECT @rank:= @rank + 1 as rank, s.* FROM (
  SELECT field1, field2, ... FROM players ORDER BY score DESC LIMIT 25  
) s; --<<-- than this one.

Ah, y lea sobre cosas básicas de SQL.
Google para SQL tutorial

Buena suerte.