Вам нужно
1) получить оценку записи, которую вы пытаетесь оценить
2) подсчитать количество записей с «лучшим» счетом («лучше» зависит от вашего типа игры. Баскетбол, чем выше балл, тем лучше. Гольф, чем меньше балл, тем лучше.)
Итак, что-то вроде
select records in order
for each record
score = record.score
rank = select count(*) + 1 from table where score_column is better than score
display data
end for
Проблема в том, что выполнение подсчета (*) для любого значительного объема данных происходит медленно. Но вы можете видеть, что как только у вас есть ранг первых ДВУХ разных баллов, вы можете определить ранг оставшихся строк в вашем коде без запроса. Но помните: вам, вероятно, нужно учитывать связи.