Mysql
 sql >> Base de données >  >> RDS >> Mysql

Obtenir le rang d'une ligne dans une requête mysql

L'erreur est assez claire. Chaque table dérivée doit avoir son propre alias. Vous devez aliaser le (SELECT @rownum := 0) comme ça :

SELECT 
  @rownum := @rownum + 1 AS rank, 
  name,
  vote 
FROM table, (SELECT @rownum := 0) t --This what you were missing an alias
ORDER BY vote DESC

Démo SQL Fiddle