Я создаю систему ранжирования фотографий. По сути, у меня есть три основных поля: выиграл, проиграл, сыграл как надо.
Допустим, у меня есть три фотографии
Photo Won Lost Played
-------------------------
A 3 2 5
B 1 4 5
C 3 2 5
Я собираюсь написать запрос, чтобы получить рейтинг каждой фотографии. Проблема в том, что фото A и фото C имеют одинаковую запись. Как сделать запрос, который возвращает 1 для фото A и C?
Photo Won Lost Played Rank
-------------------------------
A 3 2 5 1
C 3 2 5 1
B 1 4 5 ?
Добавлено 3/17/11
Я немного изменил структуру таблицы
так что теперь у меня есть поле «voice_ratio» вместо «сыграно». «voice_ratio» содержит значение «poll_win» / «voice_lose».
поэтому таблица должна быть пересмотрена как
Photo Won Lost Ratio
A 3 2 1.5
B 1 4 0.25
C 3 2 1.5
Что я хочу сделать:
- запросите только «Фото А» и получите ранг.
- запросить все записи и отобразить ранг каждой записи.
Я могу сделать # 2 по следующему запросу.
"select * from table order by ratio desc"
но опять проблема. Фото А и С имеют одинаковое соотношение. Мне нужно сделать их обоих рангом № 1.