ElGato
Новичок
Указать индекс для ORDER BY
Есть таблица USERS, в ней, в есть поля ID,positionTS (int)
Есть 2 индекса по этим полям.
Делаю такой запрос
Всё работает быстро, задействован индекс по полю "positionTS"
но если написать так
т.е. добавить еще сортировку по ID, то получаем fullScan и медленное выполнение
Как сделать так чтобы этот запрос использовал индекс по полю "positionTS"?
USE INDEX ('positionTS'), как я понял не распространяется на ORDER BY.
Можно конечно сделать индекс по двум полям (positionTS,ID), а можно ли как-н обойтись без этого?
Есть таблица USERS, в ней, в есть поля ID,positionTS (int)
Есть 2 индекса по этим полям.
Делаю такой запрос
Код:
select ID FROM users
ORDER BY positionTS DESC
LIMIT 0,10
но если написать так
Код:
select ID
FROM users
ORDER BY positionTS DESC, ID DESC
LIMIT 0,10
Как сделать так чтобы этот запрос использовал индекс по полю "positionTS"?
USE INDEX ('positionTS'), как я понял не распространяется на ORDER BY.
Можно конечно сделать индекс по двум полям (positionTS,ID), а можно ли как-н обойтись без этого?