Вопрос конечно может задан некорректно, но сейчас все объясню.
Есть БД, с большим кол-вом записей(в теории >100 000).
Надо составить рейтинг пользователей, по наибольшему значению в столбце how_start.
Общий рейтинг смог составить, но вот найти конкретного пользователя в этой большой БД, не смог.
Это как я сортировал наиболее часто играющих пользователей:
most_games_player = profiles.objects.order_by('-how_start')
работает всё корректно, и более того, быстро!
Но вот захотелось найти место юзера в этом рейтинге, возник вопрос, как?
Начал искать информацию, так и не нашел ответ.
Попробовал с помощью такого способа:
player = list(most_games_player).index(most_games_player.get(user_id=user_id))
Все работает, но. Есть одно но, оно работает медленно(очень даже), на 70 000 пользователей - потратилась 1 секунда, это достаточно много(как по мне), есть ли какой-то способ оптимизировать данный способ, либо есть ли встроенный методы в django.model?
Вопрос состоит в чем, чтобы в most_games_player найти конкретного пользователя, например с id==555.
Спасибо за внимание