Раньше я спросил this question, в котором в основном просили, как перечислять 10 победителей в таблице со многими победителями, согласно их пунктам.MySQL: ВЫБЕРИТЕ Победитель, возвращая свой ранг
Это был дан ответ.
Теперь я ищу для поиска данного победителя X в таблице и узнаю, что позиция он находится, когда таблица упорядочена по точкам.
Например, если это таблица:
Winners:
NAME:____|__POINTS:
Winner1 | 1241
Winner2 | 1199
Sally | 1000
Winner4 | 900
Winner5 | 889
Winner6 | 700
Winner7 | 667
Jacob | 623
Winner9 | 622
Winner10 | 605
Winner11 | 600
Winner12 | 586
Thomas | 455
Pamela | 434
Winner15 | 411
Winner16 | 410
Возможные входы и выходы для того, что я хочу сделать:
Query: "Sally", "Winner12", "Pamela", "Jacob"
Output: 3 12 14 623
Как я могу это сделать? Возможно ли, используя только инструкцию MySQL? Или мне нужен PHP?
Это та вещь, я хочу:
WHEREIS FROM Winners WHERE Name='Sally' LIMIT 1
Идеи?
Редактировать - ПРИМЕЧАНИЕ. Вам не нужно иметь дело с ситуацией, когда у двух победителей есть одинаковые точки (предположим для простоты, что этого не происходит).
Я думаю, что вы имеете в виду 'WHERE Points> ...' –
(+1) на самом деле, никогда не будет два победителя с той же позиции, как они первый упорядоченный по точкам, а затем Start , а Start - УНИКАЛЬНО. Мой запрос на выбор 10 выглядит следующим образом: 'SELECT * FROM Winners ORDER BY Points DESC, Start ASC' – Cam
Изучил его еще и попробовал. Это отлично работает; Благодаря! – Cam