ежить
12:03 04-06-2008 утреннее
для интересующихся
надо думаю поделиться, а то потом забуду, а находка по-моему любопытная.
Друг в аське спросил совета по SQL:
-------------
д: привет, не знаешь ли ты как в mysql пронумеровать результаты запроса?

я: а зачем? тут народ говорит, что это логичней в скрипте делать

д: да просто есть таблица с баллами пользователей, надо строить по ним рейтинги, соотв. вычислять позицию пользователя в рейтинге
... как узнать номер места польователя, чтобы сказать пользователю, что вы занимаете 5 позицию
--------------

т.е. задачка интересная - конечно, можно вывести все результаты с сортировкой, и потом в цикле считать место - но это просто тупо. Несколько более элегантно - динамическая таблица на основе запроса с сортировкой, с доп. столбцом-индексом.

Но решение, найденное мозговым штурмом, оказалось совсем простым: делаем select count тех записей, у которых "баллы" меньше (или больше, смотря как рейтинг строится), нужного нам юзера - так и получаем его место в рейтинге. все укладывается в 2 простых или 1 составной запрос!