Добрый день, вот столкнулся с задачей, простой с виду, но для решения которой нужно хорошенько пошевелить мозгами :)
Итак: имеем следующую таблицу:
Нужно проставить место (place) в рейтинге каждой записи, базируясь на баллах (rating), причем, если баллы совпадают — использовать вторичный признак (в данном случае — id). В результате нужно получить следующую таблицу:
Важное замечание: ответом должен являться один запрос UPDATE (вложенные SELECT запросы использовать можно).
Жду предложений :)
Итак: имеем следующую таблицу:
id | rating | place |
---|---|---|
1 | 86 | NULL |
2 | 5 | NULL |
3 | 5 | NULL |
4 | 41 | NULL |
5 | 1 | NULL |
6 | 91 | NULL |
Нужно проставить место (place) в рейтинге каждой записи, базируясь на баллах (rating), причем, если баллы совпадают — использовать вторичный признак (в данном случае — id). В результате нужно получить следующую таблицу:
id | rating | place |
---|---|---|
1 | 86 | 5 |
2 | 5 | 2 |
3 | 5 | 3 |
4 | 41 | 4 |
5 | 1 | 1 |
6 | 91 | 6 |
Важное замечание: ответом должен являться один запрос UPDATE (вложенные SELECT запросы использовать можно).
Жду предложений :)