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