ИМХО:
1. выбираем из рейтинга все записи, сортируем по рейтингу.
2. Начинаем рисовать в цикле порезультатам.
2.1 Создаем массив "окученый юзер".
2.2 Если текущего юзера в нем нет - рисуем. (!in_array() )
2.3 Прорисованного юзера заносим в свой массив.
2.4 Если нарисовали 100 строк - сваливаем из цикла.
Данные, которые мы "неотфетчили" так и останутся в буфере мускуля и умрут там спокойно и без проблем.