У меня есть база данных, которая имеет структуру, аналогичную структуре:Finding «ранг» входа в базу данных SQL эффективно
http://www.sqlfiddle.com/#!2/6c5239
В настоящее время в .php
сценарии, чтобы найти ранг человека я бегу
и зацикливать результаты, прирастить "rank"
изменять каждую строку до тех пор, пока я не нахожу желаемое имя, не выдаю результаты и не прерываю цикл.
Я считаю, что это очень неэффективный способ получить ранжирование, как для веб-сервера, для которого требуется прокрутка данных, так и для базы данных SQL для возврата всей таблицы.
Есть ли более простой способ сделать это, возможно, через инструкцию SQL, которая слишком не налагает на SQL-сервер слишком много?
Я не уверен, что ваш метод является плохим. Но вы можете сделать это эффективно в SQL с помощью переменных для отслеживания рангов. – Strawberry
Если вам не нужно делать {SELECT * FROM}, не используйте его. выберите столбцы, которые необходимо запросить, чтобы обеспечить скорость в базе данных. Я не могу сказать, нужно ли запрашивать все столбцы. – Mubo