यह उन रैंकों को संभालेगा जिनका स्कोर समान है।
SELECT d.*, c.ranks
FROM
(
SELECT Score, @rank:[email protected]+1 Ranks
FROM
(
SELECT DISTINCT Score
FROM tableName a
ORDER BY score DESC
) t, (SELECT @rank:= 0) r
) c
INNER JOIN tableName d
ON c.score = d.score
// WHERE d.username = 'Helen'
उदाहरण के लिए
KEY username password score Ranks
1 Anna 123 5 3
2 Bobby 345 6 2
3 Helen 678 6 2
4 Jon 567 2 4
5 Arthur ddd 8 1
बेहतर प्रदर्शन के लिए, एक INDEX
जोड़ें कॉलम पर Score
,
ALTER TABLE tableName ADD INDEX (Score)