你好,我正在学习MYSQL/MariaDB,我坚持基于2列进行排名
我做了这个查询:
SELECT * FROM partides WHERE PUNTUACIO > 0 ORDER BY ID_NIVELL DESC, PUNTUACIO DESC
我得到了这个表现在我想要红色的表:在这里输入图像描述
按等级和分数(标点符号)排名,每个用户只能有一个nick进入前5名
Thanks in advance
试试这个:
SELECT A.ID_PARTIDA, A.NICK, A.ID_NIVELL, MAX(A.PUNTUACIO)
FROM (
SELECT *
FROM partides
WHERE PUNTUACIO > 0
ORDER BY ID_NIVELL DESC, PUNTUACIO DESC) AS 'A'
GROUP BY A.ID_PARTIDA, A.NICK, A.ID_NIVELL