gryphon@gryphon
Пользователь
Задачка для знатоков MySQL
1 мин
646Добрый день, вот столкнулся с задачей, простой с виду, но для решения которой нужно хорошенько пошевелить мозгами :)
Итак: имеем следующую таблицу:
Нужно проставить место (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 запросы использовать можно).
Жду предложений :)
-2
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность