例如,我有一张这样的桌子:
名称评级
马泰124
安德烈20
序列25
约翰190
迈克96
安迪245
汤姆73
我需要输出如下内容(按等级排序):
约翰的位置是2;或者汤姆的位置是5;(我不需要得到所有的结果,只要一个)
我怎样才能做到这一点?
提前谢谢
最佳答案
SELECT COUNT(*) + 1
FROM users
WHERE (rating, name) <
(
SELECT rating, name
FROM users
WHERE name = 'john'
)
请注意,如果在名称和分级上都有重复项,则此查询将为它们分配相同的分级。