Есть общий запрос вида:
SELECT id FROM test BY time DESC
Выдаются результаты вида:
order - id
1 - 2
2 - 69
3 - 111
Как максимально просто зная id понять, какой у него будет порядковый номер(order) в таком запросе?
P.S. если изложил неясно - напишите в комменты. Попробую еще раз
Номер записи в указанной вами выборке для ID=XX можно получить так:
select count(1)
from test A,
(select time, id from test where id=XX) B
where A.time > B.time
or (A.time=B.time and A.id<=B.id)
Наличие индекса по полю time очень приветствуется. Может потребоваться несколько усложнить условие для более оптимальному проходу по индексу. Но сделать это можно только по планам выполнения на реальной таблице с данными.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости