Всем привет, появилась задача сделать рейтинг пользователей. Есть отдельная таблица с id пользователей и их "очками" - score. Периодически (предположительно раза 2-3 в минуту) в этой таблице будет происходить изменение 2-5 позиций за раз. Довольно часто необходимо выводить данный рейтинг с сортировкой по score. Как стоит работать с данным рейтингом?
Пока что вижу 2 варианта:
1) Банально сортировать через sql запросы при каждом запросе на вывод рейтинга (тут есть некоторые сомнения по поводу того что необходимо делать с позициями, в которых одинаковое количество очков).
2) Добавить столбец с позициями в рейтинге. При каждом изменении очков в рейтинге проводить либо полную сортировку, либо сортировку на участке, где изменяется рейтинг (если пользователь перескакивает скажем на 50 позиций наверх, то рейтинг как раз таки изменится у этих 50 позиций).
LordGuard: Какое правило? По какому критерию сортировать - это вы должны решить. Если этот критерий в базе есть, то просто будет ORDER BY по нескольким колонкам, вот и всё.